我在远处有一个Jar。我可以使用com.googlecode.maven-download-plugin将其下载到src / lib中。我想在我的代码中使用此jar作为依赖项来解决编译错误。
<build>
<plugins>
<plugin>
<groupId>com.googlecode.maven-download-plugin</groupId>
<artifactId>download-maven-plugin</artifactId>
<version>1.4.1</version>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>http://remoteMachine/file/hello.zip</url>
<unpack>true</unpack><outputDirectory>${project.build.directory}/../src/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
答案 0 :(得分:1)
您可以创建一个指向罐子的存储库
<repository>
<id>cool project</id>
<name>My cool repo</name>
<url>file://${dirWithProject}/libs</url>
</repository>
然后只需添加依赖项
<dependency>
<groupId>yourGroupUd</groupId>
<artifactId>your-artifact-id</artifactId>
<version>0.0.1</version>
</dependency>
另一种方法是使用mvn install:install-file
或添加类似的依赖项
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ldapjdk</groupId>
<artifactId>ldapjdk</artifactId>
<scope>system</scope>
<version>1.0</version>
<systemPath>${basedir}\src\lib\ldapjdk.jar</systemPath>
</dependency>
</dependencies>
来源http://www.tutorialspoint.com/maven/maven_external_dependencies.htm
答案 1 :(得分:1)
最好的方法是使用maven install
指向存储在文件系统上的jar,
并在pom中将其用作常规依赖项。
答案 2 :(得分:0)
您当前正在尝试违反Maven约定。如果您使用自定义插件随机解压缩ZIP,则很可能会破坏某些Maven功能,例如与-T
标志并行执行。最糟糕的是,违反约定会使您的构建更难以理解,并且失去Maven的最大好处convention over configuration。
将ZIP转换为适当的Maven依赖项,并使用标准的依赖项解析机制,<dependency>
中的pom.xml
部分。