1
我有一個scala項目,我正在做一個sbt publish
。它給了我一些文物:mvn exec:在一個sbt項目上的java
/maven/repo/com/davez0r/proj_2.10/vers/proj_2.10-vers.jar
/maven/repo/com/davez0r/proj_2.10/vers/proj_2.10-vers.pom
...others...
現在我想運行罐子裏面的類:
$ mvn -f /maven/repo/com/davez0r/proj_2.10/vers/ exec:java
-Dexec.mainClass="com.davez0r.App"
這不起作用:
java.io.FileNotFoundException: /maven/repo/com/davez0r/proj_2.10/vers/pom.xml
好吧,我可以點mvn
位於sbt
生成的pom
文件中:
$ mvn -f /maven/repo/com/davez0r/proj_2.10/vers/proj_2.10-vers.pom exec:java
-Dexec.mainClass="com.davez0r.App"
現在發現我的依賴,但它並沒有找到jar
坐在旁邊的pom
:
java.lang.ClassNotFoundException: com.davez0r.App
我可以創建一個單獨的項目,其唯一的依賴是這組器物,但似乎沒有必要。我會將這個細節作爲答案發布。
有沒有什麼辦法通過mvn
直接從回購中運行?我在pom
中設置了不正確的設置嗎?
<project>
<modelVersion>4.0</modelVersion>
<groupId>com.davez0r</groupId>
<artifactId>proj_2.10</artifactId>
<packaging>jar</packaging>
<description>proj</description>
<version>vers</version>
<name>proj</name>
<organization>
<name>com.davez0r</name>
</organization>
<dependencies>...</dependencies>
</project>
謝謝!