2016-12-21 77 views
0

我Dependencie是建成一個nar(其中包含Java文件和JNI封裝)Maven的NAR依賴 - 無法解析相關

<dependency> 
     <groupId>jni</groupId> 
     <artifactId>jni</artifactId> 
     <version>1.0.0-SNAPSHOT</version> 
</dependency> 

現在如果我做

mvn clean package 

它說Could not resolve dependencies for project java:javatest:jar:1.0.0-SNAPSHOT: Could not find artifact jni:jni:jar:1.0.0-SNAPSHOT

問題是,在一個項目與nar - 包裝輸出被命名爲.nar而不是.jar所以如果我將jni.nar複製到我的本地存儲庫(~/.m2/repository/jni/jni)中,並將其命名爲jni.jar,它工作正常。

任何想法如何解決這個問題,而無需手動重命名文件?

回答

1

你可能需要告訴你的Maven的依賴關係類型是不同的:

<dependency> 
     <groupId>jni</groupId> 
     <artifactId>jni</artifactId> 
     <version>1.0.0-SNAPSHOT</version> 
     <type>nar</type> 
</dependency> 

注:我猜類型是「全國房地產經紀人協會」在這裏。檢查依賴關係的POM以查看實際類型。

+0

該類型不一定與擴展名或包裝有關。這確實是'nar',[但是因爲插件決定了這個](https://github.com/maven-nar/nar-maven-plugin/blob/nar-maven-plugin-3.5.1/src/主/資源/ META-INF /叢/ components.xml文件#L112-L115)。 – Tunaki

+0

也不起作用,在我的理解中,我會使用它,如果我的項目也是一個需要共享庫作爲依賴項的NAR項目? – user2071938

+0

@Tunaki確實!這就是爲什麼我寫了我只是猜測它是「nar」。 –

相關問題