我正在尝试使用Proguard通过Maven插件来缩小我的jar大小。我的配置文件如下:
-libraryjars <java.home>/jmods/java.base.jmod
-libraryjars <java.home>/jmods/java.net.http.jmod
-libraryjars <java.home>/jmods/jdk.httpserver.jmod
-keep public class * {
public protected *;
}
-keepclasseswithmembernames,includedescriptorclasses class * {
native <methods>;
}
-dontwarn javax.servlet.**
-dontnote jdk.internal.**
-dontnote org.codehaus.**
它可以编译,但是我在执行时遇到了这个异常:
线程“主”中的异常java.lang.NoClassDefFoundError:javax / inject / Provider 在fr.enedis.ccma.iam.iavenir.main.IAvenirApplication.main(IAvenirApplication.java:14) 引起原因:java.lang.ClassNotFoundException:javax.inject.Provider
当我添加
-libraryjars {my_folder} /javax.inject-1.jar
对于我的配置文件,构建失败
相同的输入jar [{my_folder / javax.inject-1.jar]被指定两次。
关于我所缺少的任何想法吗?
预先感谢