NetBeans 6.5を使用していますが、何らかの理由で「そのまま」実行可能なjarが生成されません。
プロジェクトをメインプロジェクトに設定し、プロジェクトプロパティの[実行]メニューでメインクラスを定義しました。F6キーを押して実行すると、プロジェクトは問題なく動作します。
マニフェストファイルを確認したところ、実際にはメインクラスが定義されておらず、ライブラリの依存関係も省略されていました。
何か不足していますか?実行可能なjarファイルを生成する方法(マニフェストファイルを手動で変更する以外)はありますか?
編集:はい、私はきれいにして再構築しようとしましたが、それはまだ同じマニフェスト.mfで、distフォルダにjarを生成しました
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 10.0-b23 (Sun Microsystems Inc.)
Maven Java Application project。 maven Assembly plugin を含むようにpom.xmlファイルを変更して、1つのTweak to myrhoの回答(事前定義された記述子「jar-with-dependencies」を参照する必要があります):
<plugin>
<artifactId>maven-Assembly-plugin</artifactId>
<version>2.4</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>your.app.MainClass</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-Assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
別の方法は、Java Mavenを使用しないNetBeansのアプリケーションプロジェクトをビルドすることです。[ファイル]-> [プロジェクトプロパティ]-> [ビルド]-> [パッケージ]を選択し、[依存ライブラリをコピー]チェックボックスをオンにします。
Mavenアセンブリプラグインを使用していて、依存関係のある実行可能jarをビルドする場合は、この部分をpom.xmlのmaven-Assembly-pluginセクションの設定に追加する必要があります。
<plugin>
<artifactId>maven-Assembly-plugin</artifactId>
<configuration>
<!-- ... -->
<archive>
<manifest>
<mainClass>your.app.SampleClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
これを試して:
[プロジェクト]パネルでプロジェクトを右クリックし、[プロパティ]を選択します
新しいウィンドウで[実行]をクリックします。
[メインクラス:]フィールドを編集します([参照]をクリックします)。
このようにして、アプリケーションへのエントリポイントであるメインクラスを選択すると、マニフェストが正しく作成されます。
非常にシンプルです。jarファイルと.jadファイルはdist
フォルダにあります
私も答えを探していて、これを http://forums.netbeans.org/ptopic3465.html から取得しました
解決しました:)
プロジェクトをクリーンアップして再ビルドしましたか?あなたはそれを正しくやっているように聞こえます。念のため、いくつかの参照を示します。
http://www.velocityreviews.com/forums/t141385-how-to-create-executable-jar-in-netbeans-ide.htmlhttp://dr.berkeley。 edu/REM/wiki/index.php/Making_a_Java_executable_jar_in_Netbeans
Java Applicationの代わりに既存のソースを使用するJavaプロジェクトを作成した可能性がありますか?
私は同様の問題があり、新しいJavaアプリケーションを作成してから手動でsrcファイルをコピーすると問題が解決しました-すべてが「そのまま」機能しました。
プロジェクトの種類によってビルドプロセスが異なるという経験がありました。
「Java Class Library」プロジェクトを作成したと思います。
つまり、「Javaアプリケーション」プロジェクトを作成し、すべてのクラスをそれにマージするだけです。
次に、Netbeansはオーバーライドではなく、拡張します"manifest.mf"
をJARに挿入します。
もちろん、それは愚かなNetbeansのバグです。もちろん、後でメインクラスを追加することもできます。
編集:私の他の答えを見てください。簡単です。
プロジェクトをクリーンアップしてビルドすると、「dist」ディレクトリにjarが作成されます。
プロジェクトディレクトリの最上位にmanifest.mfを作成する必要があります。
同じ問題が発生した後、実際にこのページに出くわしました。manifest.mfファイルを編集しましたが、jar MANIFEST.MFファイルに変更が表示されませんでした。私が抱えていた問題を見つけ、関連がある場合に備えて情報を伝えたいと思いました。
私が間違っていたのは、自分が取り組んでいるプロジェクトがメインプロジェクトとして設定されていなかったため、正しいマニフェストを編集しているときに間違ったプロジェクトをコンパイルしていました。
では、ストーリーの短い部分で、編集しているmanifest.mfファイルに対して正しいプロジェクトが選択されているかどうかを確認しましたか?
NetBeansで手動でパッケージを作成するにはIDE 8.0.2 ...
出力ウィンドウが表示されます(Macの場合)...
Building jar: /Users/<username>/NetBeansProjects/<project>/target/<project>-1.0-SNAPSHOT.jar
ファイルビューに移動します。ルートディレクトリにmanifest.mfを作成します。
/project_folder
build.xml
manifest.mf(edit here)
/dist
/src
/test
/build
興味深い情報は次のとおりです。
より良いソリューション:
Nbproject/project.propertiesを編集してエントリを追加:
manifest.file=manifest.mf
manifest.mf
はプロジェクトのルートにあり、以下のみを含む必要があります。
Manifest-Version: 1.0
X-COMMENT: Main-Class will be added automatically by build
動作します。テスト済み。
Neatbeanでは、次の手順を実行できます。1.右クリックプロジェクト名項目を選択設定を設定選択してくださいカスタマイズ
2。 実行を選択し、メインクラスに注意してください。
3。 参照を選択し、実行する場合はクラスを設定します。 [OK]をクリックした後。
4。終わり。
7.3では、プロパティ/ビルド/パッケージ/依存ライブラリのコピーを有効にするだけで、メインクラス(選択したターゲットに依存)がビルド時にマニフェストに追加されます。
別のアプローチは、完全にNetBeansでユニットテストなどを開発、実行することですが、その後、mavenまたはantスクリプトを使用して「実際の」ビルドを行います。これらの種類のビルドツールを使用すると、ビルド方法をより詳細に制御でき、ビルドを自動化することもできます。
Mavenの場合、Maven jarプラグインを使用してマニフェストにエントリを簡単に追加できます。
確かに奇妙なことですが、クラスパスを含めて、すぐに使えるはずです。
以前のバージョンからアップグレードしましたか?アップグレードすると、NBはプロジェクトファイルをアップグレードしますが、この移行がうまく行われず、この種のシナリオがポップアップすることがあります。プロジェクトを閉じ、nbproject dirの名前をnbproject_oldに変更して、新しいプロジェクトを実行してください- > Java既存のソースを使用するプロジェクト。メインクラスを再度設定し、依存関係を追加して、再試行してください。