在调用maven之前进行eclipse变量替换

时间:2012-10-16 16:08:40

标签: eclipse maven m2eclipse m2e

有没有办法告诉m2e在调用maven之前解决eclipse变量?我有这个配置

<plugin>
    <!-- Done to create Target Platform needed by eclipse -->
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.5.1</version>
    <executions>
        <execution>
            <id>copy-dependencies</id>
            <phase>process-resources</phase>
            <goals>
                <goal>copy-dependencies</goal>
            </goals>
            <configuration>

                <outputDirectory>${workspace_loc}/project-OSGi/target/dependency</outputDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>

但是${workspace_loc}在调用maven之前没有得到解决,所以我最终得到了一个名为workspace_loc的文件夹

2 个答案:

答案 0 :(得分:1)

我的结论是,在调用maven之前无法解析eclipse变量。我发现的唯一解决方法是在maven {env.XX}和eclipse ${env_var:XX}中使用环境变量,这样maven和eclipse都会解析为相同的值

答案 1 :(得分:0)

我相信${workspace_loc}是一些特定于CDT的Eclipse变量,不是吗?

这里需要的是${project.build.directory},这是您需要的target目录。您还可以尝试其他一些选项,只需键入${并按 Ctrl + Space ,它将显示所有可用属性及其实际解析值作为提示。