我们有一个非常简单的第谷项目:
<properties>
<tycho-version>0.26.0</tycho-version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.build.timestamp.format>yyyyMMdd_HHmmss</maven.build.timestamp.format>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-maven-plugin</artifactId>
<extensions>true</extensions>
<version>${tycho-version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho-version}</version>
<!-- snipped because probably not relevant -->
</plugin>
</plugins>
</build>
当我们执行maven目标eclipse:eclipse
时,我们会在功能和产品的 .project 文件中收到以下奇怪的评论:
NO_M2ECLIPSE_SUPPORT:M2Eclipse不支持使用maven-eclipse-plugin创建的项目文件。
(一个无意义的例外,因为我们在命令行上执行它,根本没有涉及M2Eclipse。)
我们可能会接受它,但 .classpath 文件看起来像这样:
<classpathentry kind="lib" path="C:/Users/WileCoyote/.m2/repository/p2/osgi/bundle/com.itextpdf/5.5.3/com.itextpdf-5.5.3.jar"/>
<classpathentry kind="lib" path="C:/Users/WileCoyote/.m2/repository/p2/osgi/bundle/org.acme.config/2.0.2.v201506191015/org.acme.config-2.0.2.v201506191015.jar"/>
<!-- etc. -->
因此,如果在其他用户的工作区中导入,这些项目将不再起作用。
Here是关于如何解决问题的解释,但这真的是一个明智的选择(从类路径中删除损坏的类路径条目,因为功能和产品无论如何都不需要它们)。
我真正想知道的是它为什么会发生?问题是什么?我该如何解决?