使用Eclipse,Maven,maven-eclipse-plugin和build-helper-maven-plugin从另一个引用Groovy项目

时间:2013-08-27 15:56:07

标签: eclipse maven groovy

我有一个Eclipse Groovy项目,比如A,需要引用/使用另一个名为GenUtils的Eclipse Groovy项目的源代码。 在Eclipse环境中,可以选择项目A,然后选择Properties - >项目 - >添加并检查GenUtils。 这会在A:

的.classpath文件中生成以下内容
<classpathentry kind="src" path="src"/>
...
...
<classpathentry combineaccessrules="false" kind="src" path="/GenUtils"/>

其中“/ GenUtils”引用工作区中的项目。这很好。

现在我正在尝试使用maven-eclipse-plugin为maven做同样的事情,从maven pom.xml为A生成Eclipse项目文件。 (使用mvn eclipse:eclipse)

通过研究(我是Maven新手),我发现默认情况下Maven不支持多个源位置,推荐的解决方案是 build-helper-maven-plugin。在我的POM中使用它:

    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <version>1.8</version>
    <executions>
        <execution>
            <id>add-source</id>
            <phase>generate-sources</phase>
            <goals>
                <goal>add-source</goal>
            </goals>
            <configuration>
                <sources>
                    <source>../../GenUtils</source>
                </sources>
            </configuration>
        </execution>
    </executions>
</plugin>

我可以给出GenUtils项目的相对路径。这会在.classpath文件中生成以下内容:      也就是说,项目源确实以绝对路径引用!不理想,但暂时会这样做。

问题是Eclipse不接受这个并给出错误:“:路径中的无效字符'C:/ _ SDE / Tools / ArtopBasedTools / GenUtils'。” (错误日志), “项目A我们缺少必需的源文件夹:'C:/ _SDE / Tools / ArtopBasedTools / GenUtils'”(问题wndow)。这可能是由于Eclipse预期的事实 引用其他工作区项目而不是任意目录。它期望在.classpath文件中使用path =“/ GenUtils”条目而不是完整的绝对路径。

所以问题是: 有没有办法在build-helper-maven-plugin中指定它?

更多属: 这是使用Maven从另一个访问Groovy Eclipse项目的正确方法吗?或者是否有其他推荐的解决方案?

0 个答案:

没有答案