首页 > 编写java项目的一个小疑问

编写java项目的一个小疑问

用eclipse IDEA开发java项目挺长时间了。有个可能很简单的小问题一直不知道怎么处理,让大家见笑了。问题是这样的

我一个项目开发了很多工具类 其中包括一个SmsKit工具类。发送短信用的。但是普通的时候我用不到这个工具类,所以不想引入这个jar包,其他还有三个数据库连接池,我只用到一个,但是为了让别人方便用我搭的框架另外两个连接池的代码我也不想删掉,所以jar包也不引入,这样我开发的时候这些文件一直报错。请问有好的处理方法吗?谢谢各位。


你是说有些未用到的代码,所以你不想引入相关的jar包,但是如果未引入jar包的话,那么那些未用到的代码会报错,但你又不想删了,是吗?
对于jar是必需品的代码,要么你就删了代码,不引入jar,要么你就得引入,不用就是了。
ps:或者你把那些报错的代码单独打成jar


如果楼主是使用 maven 作为构建工具的话, 可以将你不想引入的第三方依赖的scope声明为 runtime, 示例如下:

        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.6</version>
            <scope>runtime</scope>
        </dependency>

这样编译的时候不会报错, 而使用你代码的业务方如果想要用 commons-lang, 则重新声明对它的依赖即可(或者在运行时提供 commons-lang jar包).


你可以研究一下 Java 的 java.lang.ClassLoader 和反射相关类,比如 java.lang.Classjava.lang.reflect 包下面的类

【热门文章】
【热门文章】