我是 maven 的新手,一开始遇到了一个看起来很容易的问题,但我已经让我忙了一整天,没有办法让它工作。
首先,作为运行 eclipse:eclipse 插件的一部分,我创建了一个链接文件夹,如下所示:
<linkedResources>
<linkedResource>
<name>properties</name>
<type>2</type>
<location>${PARENT-2-PROJECT_LOC}/some_other_project/properties</location>
</linkedResource>
<linkedResource>
<name>properties/messages.properties</name>
<type>1</type>
<location>${PARENT-2-PROJECT_LOC}/some_other_project/properties/messages.properties</location>
</linkedResource>
然后我将该文件夹添加为源文件夹,如下所示:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>properties</source>
<source>some_real_folder</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
但是,当我在 eclipse 中查看生成的 .classpath 时,“some_real_folder”在那里,但“properties”却没有。看起来默认情况下 build-helper-maven-plugin 将检查文件夹是否存在,如果不存在则不会添加它。
我在 Eclipse 之外使用 maven 3.0.4 来运行构建,我可以在 maven 日志中看到如下内容:
[INFO] Source directory: <some path>\properties added.
这是我的项目结构:
project1
\-- properties (this is the real folder)
project2
\-- some_real_folder
\-- properties (this is the link resource pointing to the project1/properties folder)
我只需要将“some_real_folder”和链接资源“properties”都添加到project2的.classpath