如果楼主是使用 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.Class
和 java.lang.reflect
包下面的类
你是说有些未用到的代码,所以你不想引入相关的jar包,但是如果未引入jar包的话,那么那些未用到的代码会报错,但你又不想删了,是吗?
对于jar是必需品的代码,要么你就删了代码,不引入jar,要么你就得引入,不用就是了。
ps:或者你把那些报错的代码单独打成jar