我下载了源代码并构建了卡尺,如下所示:
mvn eclipse:configure-workspace eclipse:eclipse install
现在/ target文件夹有:
caliper-1.0-beta-SNAPSHOT-all.jar generated-sources surefire
caliper-1.0-beta-SNAPSHOT-sources.jar generated-test-sources surefire-reports
caliper-1.0-beta-SNAPSHOT.jar maven-archiver test-classes
classes maven-status
现在在我的spring mvc应用程序的pom文件中,如何引用我刚刚安装的本地存储库?
我使用这样的依赖性来引用caliper:
<dependency>
<groupId>com.google.caliper</groupId>
<artifactId>caliper</artifactId>
<version>${caliper-version}</version>
<scope>test</scope>
</dependency>
但根据我的上一个问题,我被建议从源代码构建以获取尚未发布的更新:Caliper test using exec-maven-plugin is saying main method signature isn't valid
所以我不确定如何引用我在本地构建并使用maven安装的卡尺版本。
答案 0 :(得分:1)
通过调用mvn install
,您将项目安装到本地存储库中。 Maven将使用本地工件,以防它们可用。请注意, / target 文件夹不本地存储库!
看看
~/.m2/repository
C:\Documents and Settings\{your-username}\.m2\repository
之类的内容。 你可以看看那里,如果jar文件夹可用于com / google / caliper / caliper / 1.0-BETA-SNAPSHOT /
因此,如果您正确构建并安装了 caliper 工件,则可以在项目中引用它,maven将从本地存储库中解析它。如果它在那里不可用,它将尝试从Maven central或您配置的存储库中解析它。
请务必检查项目pom中的caliper版本是否正确引用,如果我理解正确,则表示: 1.0-beta-SNAPSHOT 。您似乎使用变量${caliper-version}
,仔细检查此变量是否正确定义并引用正确的版本。
您可以阅读introduction to repositories以获取更多信息。
答案 1 :(得分:0)
如果版本是例如1.0-SNAPSHOT,那么将jar放在这里
localrepo_folder
com
google
caliper
caliper <-- artifact
1.0-SNAPSHOT
caliper-1.0-SNAPSHOT.jar