2016-06-13 12 views
3

spring boot project、実行可能なjarとしてビルドしますが、実行可能なjarを抽出できません。なぜspring boot executable jarを抽出できないのですか?

jar xvf spring-boot-foo-0.0.1-SNAPSHOT.jar 

出力しません。通常のjarファイルを抽出するとき はしかし、

jar xvf mysql-connector-java-5.1.38.jar 
created: META-INF/ 
inflated: META-INF/MANIFEST.MF 
created: META-INF/services/ 
... 

は、なぜこれです成功したのですか?

+1

あなたのお気に入りのジップツールで春のブートジャーを開けてください。あなたはできる?それに何かありますか? – Gimby

+0

ええ、「解凍」して解凍できました。 'unizp'はバネブート実行可能なjarだけでなく、すべてのjarファイルを抽出することができます。 – zhuguowei

+0

Winzipは連携しません。 'エラー:セントラルディレクトリが見つかりません。 ' – Adam

答えて

5

あなたのjarファイルをlessことができ、次のことを見つける:

ある
#!/bin/bash 
# 
# . ____   _   __ _ _ 
# /\\/___'_ __ _ _(_)_ __ __ _ \ \ \ \ 
# (()\___ | '_ | '_| | '_ \/ _` | \ \ \ \ 
# \\/ ___)| |_)| | | | | || (_| | )))) 
# ' |____| .__|_| |_|_| |_\__, |//// 
# =========|_|==============|___/=/_/_/_/ 
# :: Spring Boot Startup Script :: 
# 

は、それはbashのファイルがjarファイルではなく、通常の瓶に従ってくださいです。

あなたはこのファイルを使用し抽出することができます:unzip spring-boot-foo-0.0.1-SNAPSHOT.jar

または通常のjarファイルを作るためにfalseに、バネブートのmaven-pluginのの実行可能フラグを設定します。

<plugin> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-maven-plugin</artifactId> 
    <configuration> 
     <executable>false</executable> 
    </configuration> 
</plugin> 
+0

彼らはどのようにそれをしますか?これについてもっと知るために何を検索すればよいですか? – mdo123

+0

Stack Overflowの半分の投票を与えることはできません。あなたは質問の半分に答えました。あなたは1ポイントの仲間しかいないので、私はあなたを投票して取り除くつもりではなく、カルマが私を得るだろう。それは私の平和を損なうでしょう。 – Adam

2

私は通常、Windowsでファイルを抽出するのに7zipを使用しますが、うまくいきませんでした。 @ peace0phmindのおかげで、私はテキストエディタ(notepad ++)で開こうとしましたが、内容はシェルスクリプトとバイナリコードであることがわかりました。

私はすべてのbashスクリプト行を削除し、ファイルを保存しました。これで7zipで開くことができます。

関連する問題