我需要在我的项目中使用第三方JAR库(实际上它是Eclipse的Dresden OCL),它不是作为Maven工件提供的.相反,它只是一个可下载的JAR文件.我可以像我使用的那样指示Maven使用这个JAR文件<dependencies>吗?我想应该有一些插件用于此目的?
PS.我只是不想在我的SVN存储库中添加35Mb的第三方二进制文件.
以这种方式配置会很高兴:
<build>
<plugins>
<plugin>
<groupId>com.example</groupId>
<artifactId>non-maven-dependencies-injector</artifactId>
<configuration>
<libraries>
<library>http://www.example.com/something*.jar</library>
<library>http://www.example.com/something-else*.jar</library>
</libraries>
</configuration>
</plugin>
<plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
这个插件将1)下载这些JAR文件,2)将它们作为依赖项添加到pom.xml.也许这个插件可以将它们存储在~/.m2/temp/...
lwe*_*ler 12
是的,您可以使用maven-install插件将其安装到本地存储库中
mvn install:install-file -Dfile=your-artifact-1.0.jar \
-DgroupId=org.some.group \
-DartifactId=your-artifact \
-Dversion=1.0 \
-Dpackaging=jar \
-DgeneratePom=true
Run Code Online (Sandbox Code Playgroud)
如果您希望其他团队成员能够下载此依赖项而无需安装它们,则需要设置自己的工件仓库,并使用maven-deploy-plugin以与安装它时相同的方式部署工件. .
是.maven-external-dependency-plugin支持这种(使用非Mavenized依赖项).
例:
<artifactItem>
<groupId>jwbroek.cuelib</groupId>
<artifactId>cuelib</artifactId>
<version>${cuelib-version}</version>
<packaging>jar</packaging>
<downloadUrl>http://cuelib.googlecode.com/files/cuelib-${cuelib-version}.jar</downloadUrl>
<checksum>d03b6b960b3b83a2a419e8b5f07b6ba4bd18387b</checksum>
</artifactItem>
Run Code Online (Sandbox Code Playgroud)
它还可以从zip文件中提取工件:
<artifactItem>
<groupId>mediautil</groupId>
<artifactId>mediautil</artifactId>
<version>${mediautil-version}</version>
<packaging>jar</packaging>
<install>true</install>
<force>false</force>
<downloadUrl>http://downloads.sourceforge.net/project/mediachest/MediaUtil/Version%201.0/mediautil-1.zip</downloadUrl>
<checksum>aa7ae51bb24a9268a8e57c6afe478c4293f84fda</checksum>
<extractFile>mediautil-${mediautil-version}/mediautil-${mediautil-version}.jar</extractFile>
<extractFileChecksum>e843cd55def75dce57123c79b7f36caca4841466</extractFileChecksum>
</artifactItem>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4316 次 |
| 最近记录: |