2015-12-30 26 views
1

我試圖構建一個maven項目。然而得到以下錯誤:使用java 1.8構建maven的jarsigner錯誤

Caused by: org.apache.maven.plugin.MojoExecutionException: Result of /bin/sh -c "cd /Users/rokde/Documents/workspace/mfc/map-coder/coder-web/target/jnlpStandalone && /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre/bin/jarsigner -keystore ../../******.jks -storepass ****** -keypass ****** -signedjar /Users/rokde/Documents/workspace/mfc/map-coder/coder-web/target/jnlpStandalone/coder-model-22.07-SNAPSHOT.jar -storetype jks /Users/rokde/Documents/workspace/mfc/map-coder/coder-web/target/jnlpStandalone/unprocessed_coder-model-22.07-SNAPSHOT.jar ******" execution is: '127'. 
     at org.apache.maven.plugin.jar.JarSignMojo.signJar(JarSignMojo.java:344) 
     at org.apache.maven.plugin.jar.JarSignMojo.execute(JarSignMojo.java:241) 
     at org.codehaus.mojo.webstart.AbstractBaseJnlpMojo.signJars(AbstractBaseJnlpMojo.java:733) 
     at org.codehaus.mojo.webstart.AbstractBaseJnlpMojo.signOrRenameJars(AbstractBaseJnlpMojo.java:609) 
     at org.codehaus.mojo.webstart.JnlpDownloadServletMojo.execute(JnlpDownloadServletMojo.java:139) 
     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) 
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207) 

我的ENV變量:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home 
export PATH=/Users/rokde/Downloads/apache-maven-3.3.9/bin:$PATH 

回答

2

它看起來像你的JAVA_HOME是不正確的:驗證是否存在/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre/bin/jarsigner。 AFAIK它只存在於JDK中,而不是JRE。

+0

是的。你是對的。但我不知道JAVA_HOME有什麼問題。我已經在上面分享了我的JAVA_HOME值。 – Pranalee

0

我最近在Mac OS Sierra上遇到了這個問題。無論什麼時候,當Maven嘗試簽名罐子時,它試圖使用JAVA_HOME/jre/bin中的jarsigner,但是在那裏沒有jarsigner可執行文件,它在。

JAVA_HOME/jre/bin目錄中創建jarsigner的符號鏈接似乎爲我解決了這個問題。