3

我正在尝试设置干净阶段以使用 maven-junction-plugin,因为我正在从 Linux 和 Windows 构建项目。这是连接插件的 pom.xml 部分:

        <plugin>
            <groupId>com.pyx4j</groupId>
            <artifactId>maven-junction-plugin</artifactId>
                            <version>1.0.3</version>
            <executions>
                <execution>
                    <id>unlink</id>
                    <phase>clean</phase>
                    <goals>
                        <goal>unlink</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <links>

                    <link>
                        <dst>${basedir}/src/main/webapp/WEB-INF</dst>
                        <src>${WEB-INF}</src>
                    </link>
                </links>
            </configuration>
        </plugin>

但是当我运行 mvn clean 时出现错误:

无法在项目 webapp 上执行目标 com.pyx4j:maven-junction-plugin:1.0.3:unlink (unlink):执行 unlink of goal com.pyx4j:maven-junction-plugin:1.0.3:unlink failed: Plugin com. pyx4j:maven-junction-plugin:1.0.3 或其依赖项之一无法解析:Failure to find sysinternals:junction:exe:1.04 in http://myserver.com:8080/archiva/repository/internal缓存在本地存储库,直到 archiva.default 的更新间隔已过或强制更新 -> [帮助 1] 才会重新尝试解析

我正在为 maven 存储库使用内部档案服务器,它在存储库中确实有 maven-junction-plugin,但是缺少 junction-1.04.exe,有​​没有办法可以在档案中添加下载的 junction-1.04.exe或 .m2 缓存以使 junction 插件正常工作?另一个问题,我在 Linux 中运行 mvn clean 时遇到同样的错误,我认为 junction 插件会在 Linux 中使用 ln -s,为什么它仍在寻找 junction.exe?提前致谢!

大卫

4

1 回答 1

0

您可以尝试junction.exe在本地.m2archiva分别手动安装/部署。

要在本地存储库中手动install运行,您可以运行maven install pluginmvn install:install-file的目标。在存档中,您可以使用maven deploy plugin命令。或者,archiva 可能有基于 Web 的部署选项,也可以使用。无论哪种情况,您都需要指定以下参数:deploymvn deploy:deploy-file

  • groupIdsysinternals,
  • artifactIdjunction,
  • version作为1.04
  • type作为exe.

至于为什么在linux上还要找exe,看插件的pom文件,对的依赖exe是无条件的。我怀疑它实际上不会在linux中使用。

于 2012-04-20T07:43:14.893 回答