2017-08-08 25 views
0

SpringブートCLIがGit bashウィンドウで実行を拒否します。私はそれをWindowsのパスに追加し、cmdから動作させます。 Gitのはbashの誤差がある:春ブーツCLIは、JAR実行しようとしたときにスクリプトがJAVA_HOMEのためにとクラスパスのための不正な形式のファイルパスの両方を使用しているためWindowsのGit BashでSpring起動CLIが動作しない

$ spring Error: Could not find or load main class org.springframework.boot.loader.JarLauncher

答えて

2

問題が発生しました。あなたは2つのスクリプトを見ることができる春のインストールのbinディレクトリを見てみると:


spring.bat

spring.batスクリプトは、窓CMDから実行したときに実行され、ただし、正常に動作しますgit bashで実行している場合は、スプリングスクリプトを使用します。このスクリプトは、cygpathを使用してファイルパスがUnix形式であることを確認して問題を解決しようとします。これは、Cygwin環境で実行されていると判断した場合にのみ行いますが、git bashから実行しているときはこの判断をしません。その結果、ファイルパスが不正になります。

幸い、興味がある場合はこの問題を解決できるハックがあります。 19を介してライン17でif文をコメントアウトし、そのような別の行として、その内容を追加します。

# if $cygwin ; then 
# [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` 
# fi 
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` 

そして再びライン92で別のif for文:

# if $cygwin; then 
# SPRING_HOME=`cygpath --path --mixed "$SPRING_HOME"` 
# CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` 
# fi 

SPRING_HOME=`cygpath --path --mixed "$SPRING_HOME"` 
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` 

あなたが今になりますgit bashからSpringブートCLIを実行することができます。

+0

これは完全に機能しました。ありがとう! – ares

関連する問題