Java 如何从外部maven依赖项中添加或排除某些包
我的应用程序依赖于外部jarJava 如何从外部maven依赖项中添加或排除某些包,java,security,maven,exception,tomcat,Java,Security,Maven,Exception,Tomcat,我的应用程序依赖于外部jar <dependency> <groupId>org.objectweb.joram</groupId> <artifactId>jftp</artifactId> <version>1.52</version> </dependency> org.objectweb.joram jftp 1.52 我主要对使用以下软件包感兴趣impo
<dependency>
<groupId>org.objectweb.joram</groupId>
<artifactId>jftp</artifactId>
<version>1.52</version>
</dependency>
org.objectweb.joram
jftp
1.52
我主要对使用以下软件包感兴趣import net.sf.jftp.net.*
但这个jar似乎还公开了org.apache.log4j包中的某些类,导致在将应用程序war文件部署到tomcat时出现以下异常
java.lang.SecurityException:class“org.apache.log4j.PropertyConfiguration”的签名者信息与同一包中其他类的签名者信息不匹配
有什么方法可以避免错误吗?首先您可以使用
mvn dependency:tree
查看jftp加载的依赖项。然后,像这样排除您不想要的:
<dependency>
<groupId>org.objectweb.joram</groupId>
<artifactId>jftp</artifactId>
<version>1.52</version>
<exclusions>
<exclusion> <!-- declare the exclusion here -->
<groupId>sample.ProjectB</groupId>
<artifactId>Project-B</artifactId>
</exclusion>
</exclusions>
</dependency>
org.objectweb.joram
jftp
1.52
示例项目B
B项目
这有帮助吗?谢谢你的链接,我已经浏览了这个页面。但是,如何确定要从jar文件中排除的组id和工件id呢?尝试了这个,但没有成功:(org.objectweb.joram jftp 1.52 commons logging api commons logging api