JARファイルが実行できない
解決したいこと
JARファイルを実行したい。
現在javaを勉強している者です。
JARファイルを実行できず困っている状況です。
発生している問題・エラー
エラー: メイン・クラスmain.java.Bankを検出およびロードできませんでした
原因: java.lang.ClassNotFoundException: main.java.Bank
①ソースファイル(Bank.java)の作成
package main.java;
/** 銀行クラス。
* このクラスは1つの銀行を表します。
*/
public class Bank {
/**ユーザー名*/
String name;
/**住所*/
String address;
/**アカウント追加メソッド
* 口座名義人の名前と残高を引数に、アカウントを追加します。
*/
public void addAccount(String owner, int initZandaka) {}
public static void main(String[] args) {
System.out.println("試験用のメインメソッドです。");
}
}
②コンパイルし、Bank.classを作成
③mainclass.txtの作成
Manifest-Version: 1.0
Main-Class: main.java.Bank
④jarファイルの作成
jar -cvfm Bank.jar mainclass.txt bin/main/java/Bank.class
MANIFEST.MF内部
Manifest-Version: 1.0
Main-Class: main.java.Bank
Created-By: 11.0.12 (Eclipse Foundation)
jarファイルを作成した時のディレクトリ構成は下記の通りです。
PomProject
|
|←現在地(/Users/username/desktop/PomProject)
|
|---bin
| |-- main
| |--java
| |--Bank.class
|
|---src
| |-- main
| |--java
| |--Bank.java
|
|-----Bank.jar
|
|-----mainclass.txt
⑤jarファイルの実行
PomProject % java -jar Bank.jar
※この状態でjarファイルを実行すると、エラーが出る状態です。
自分で試したこと
別のサイトでも同じような質問があり、マニフェストファイルやjarファイルの位置を変えたりましたが解決しませんでした。
https://teratail.com/questions/287939
出ているエラーがメインクラスの検出ができないとの事なので、ディレクトリの構成が悪いか、マニフェストファイルに記述しているMain-ClassのFQCNが悪いのかと考えています。
ただ後者の場合、Bank.javaに記載しているパッケージ名と同じ記載をしているので、Bank.javaのパッケージがそもそも問題があるという事になりそうですが、Eclipseでは特にエラーは出ていません。
何卒ご教示の程、宜しくお願い致します。