如何解决Maven正在对Eclipse .classpath进行不必要的更改
我最近在pom.xml中添加了一些新项目。由于某些原因,在添加了这些新项目之后,我运行了Maven项目更新,它修改了Eclipses .classpath。
以下是添加的pom.xml项:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${org.slf4j-version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${log4j-version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>${log4j-version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>${log4j-version}</version>
<exclusions>
<exclusion>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
</exclusion>
<exclusion>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jdmk</groupId>
<artifactId>jmxtools</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jmx</groupId>
<artifactId>jmxri</artifactId>
</exclusion>
</exclusions>
<scope>runtime</scope>
</dependency>
在Maven完成项目更新后的.classpath中,它添加了:includes =“ ** / *。java”
<classpath>
<classpathentry including="**/*.java" kind="src" output="target/classes" path="src/main/java">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
...
</classpath>
因此,当我运行Java时,找不到我的所有资源,因为它们不是.java。我不确定为什么添加到Maven的那些新项目突然使它修改了Eclipse .classpath。我尝试手动删除include =“ =” / *。java“,但是一旦Maven进行了另一个项目更新,它将放回原处。
有人知道为什么会这样吗?感谢您的帮助,谢谢。
解决方法
如果您在Eclipse中使用Maven,则m2e插件将控制.classpath
文件。
您需要通过POM而不是通过.classpath
来管理资源。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。