Java maven-如果需要,在哪里存储外部jar文件
在maven项目中存储jar文件的约定是什么?我知道我应该使用maven本身下载JAR,但这次情况有所不同。我正在学习一门课程(coursera.org),我有一个秘密的jar文件,我应该使用它,它不是公开的——我不会用maven下载它。我确实希望将.jar文件存储在我的私有repo(bitbucket)中。问题是我应该把文件放在哪里,这样maven project就可以使用这个jar。您需要将它添加到本地存储库中。然后把它当作其他罐子使用 你是这样做的:Java maven-如果需要,在哪里存储外部jar文件,java,maven,jar,Java,Maven,Jar,在maven项目中存储jar文件的约定是什么?我知道我应该使用maven本身下载JAR,但这次情况有所不同。我正在学习一门课程(coursera.org),我有一个秘密的jar文件,我应该使用它,它不是公开的——我不会用maven下载它。我确实希望将.jar文件存储在我的私有repo(bitbucket)中。问题是我应该把文件放在哪里,这样maven project就可以使用这个jar。您需要将它添加到本地存储库中。然后把它当作其他罐子使用 你是这样做的: mvn install:install
mvn install:install-file -Dfile={filename}.jar -DgroupId={some.group.id}
-DartifactId={artifact} -Dversion={version} -Dpackaging=jar
<dependency>
<groupId>{some.group.id}</groupId>
<artifactId>{artifact} </artifactId>
<version>{version}</version>
</dependency>
然后你就这样使用它:
mvn install:install-file -Dfile={filename}.jar -DgroupId={some.group.id}
-DartifactId={artifact} -Dversion={version} -Dpackaging=jar
<dependency>
<groupId>{some.group.id}</groupId>
<artifactId>{artifact} </artifactId>
<version>{version}</version>
</dependency>
{some.group.id}
{工件}
{version}
您需要将其添加到本地存储库。然后把它当作其他罐子使用
你是这样做的:
mvn install:install-file -Dfile={filename}.jar -DgroupId={some.group.id}
-DartifactId={artifact} -Dversion={version} -Dpackaging=jar
<dependency>
<groupId>{some.group.id}</groupId>
<artifactId>{artifact} </artifactId>
<version>{version}</version>
</dependency>
然后你就这样使用它:
mvn install:install-file -Dfile={filename}.jar -DgroupId={some.group.id}
-DartifactId={artifact} -Dversion={version} -Dpackaging=jar
<dependency>
<groupId>{some.group.id}</groupId>
<artifactId>{artifact} </artifactId>
<version>{version}</version>
</dependency>
{some.group.id}
{工件}
{version}
最好是喜欢Artifactory、Nexus、Archiva,将这些文件存储到存储库管理器中,并像往常一样使用它们 最好是喜欢Artifactory、Nexus、Archiva,将这些文件存储到存储库管理器中,并像平常一样使用它们 下面是另一种简单的方法:
在项目目录中创建基于文件的maven repo
优点:
-任何人都可以签出项目并进行maven编译
-无需安装存储库管理器
缺点:
-jar将位于项目目录中
怎么做?
我将ojdbc6.jar包括在一个项目中
第1步:
将ojdbc6.jar复制到${project.baseDir}/lib/com/oracle/driver/ojdbc6/SNAPSHOT/ojdbc6-SNAPSHOT.jar
第二步:
在pom中添加依赖项
<dependency>
<groupId>com.oracle.driver</groupId>
<artifactId>ojdbc6</artifactId>
<version>SNAPSHOT</version>
</dependency>
com.oracle.driver
ojdbc6
快照
第三步:
将此添加到您的pom中<这里我们要求Maven考虑LIB目录
以maven回购协议的形式在您的项目目录中。
<repositories>
<repository>
<id>my-repo</id>
<name>mycustom repo</name>
<url>file:${project.basedir}/lib</url>
</repository>
</repositories>
我的回购协议
我的客户回购
文件:${project.basedir}/lib
第4步:
在步骤2中分析jar文件的路径。
${project.baseDir}/lib/com/oracle/driver/ojdbc6/SNAPSHOT/ojdbc6-SNAPSHOT.jar
- com/oracle/driver/--groupId(必须是3个组件)
- ojdbc6/--artifactId
- 快照/--verison
我们存储了jar,这与maven在回购中的存储方式非常相似。这里是另一种简单的方法: 在项目目录中创建基于文件的maven repo 优点: -任何人都可以签出项目并进行maven编译 -无需安装存储库管理器 缺点: -jar将位于项目目录中 怎么做? 我将ojdbc6.jar包括在一个项目中 第1步: 将ojdbc6.jar复制到${project.baseDir}/lib/com/oracle/driver/ojdbc6/SNAPSHOT/ojdbc6-SNAPSHOT.jar 第二步: 在pom中添加依赖项
<dependency>
<groupId>com.oracle.driver</groupId>
<artifactId>ojdbc6</artifactId>
<version>SNAPSHOT</version>
</dependency>
com.oracle.driver
ojdbc6
快照
第三步:
将此添加到您的pom中<这里我们要求Maven考虑LIB目录
以maven回购协议的形式在您的项目目录中。
<repositories>
<repository>
<id>my-repo</id>
<name>mycustom repo</name>
<url>file:${project.basedir}/lib</url>
</repository>
</repositories>
我的回购协议
我的客户回购
文件:${project.basedir}/lib
第4步:
在步骤2中分析jar文件的路径。
${project.baseDir}/lib/com/oracle/driver/ojdbc6/SNAPSHOT/ojdbc6-SNAPSHOT.jar
- com/oracle/driver/--groupId(必须是3个组件)
- ojdbc6/--artifactId
- 快照/--verison
我们已经存储了这个罐子,非常类似于maven在回购中的存储方式。好的,但是我应该把它放在哪里呢?
src/main/resources
ok吗?当您使用maven时,您不会将jar文件放在项目中的某个地方。您需要做的一切就是声明依赖关系。然后,您的项目使用本地存储库中的jar文件。它们通常是下载的,但在本例中,您可以使用maven安装显式地将其放入。然后,您只需添加依赖项,即可完成。如果您想在另一台电脑上进行设置,可以将其放置在您喜欢的位置,并创建脚本将其添加到新电脑上的本地存储库。仅将依赖项添加到您的本地存储库将导致其他人无法构建项目,因为他们没有此依赖项。最好使用@khmarbaiseeyes建议的存储库管理器,用于拥有自己服务器的用户,但这是coursera.org上的课程,可能只有一个用户。在这种情况下,在何处安装repository manager,以及其他用户将如何访问它。有了将jar添加到本地存储库的脚本,一切都将得到解决。好的,但我应该把它放在哪里呢?src/main/resources
ok吗?当您使用maven时,您不会将jar文件放在项目中的某个地方。您需要做的一切就是声明依赖关系。然后,您的项目使用本地存储库中的jar文件。它们通常是下载的,但在本例中,您可以使用maven安装显式地将其放入。然后,您只需添加依赖项,即可完成。如果您想在另一台电脑上进行设置,可以将其放置在您喜欢的位置,并创建脚本将其添加到新电脑上的本地存储库。仅将依赖项添加到您的本地存储库将导致其他人无法构建项目,因为他们没有此依赖项。最好使用@khmarbaiseeyes建议的存储库管理器,用于拥有自己服务器的用户,但这是coursera.org上的课程,可能只有一个用户。在这种情况下,在何处安装repository manager,以及其他用户将如何访问它。通过将jar添加到本地存储库的脚本,所有问题都将得到解决。