sbtアセンブリプラグインを使用して、sparジョブをuber-jarパッケージにしました。sbtアセンブリからuber jarを実行すると、エラーが発生します。メインクラスが見つかりませんでした。
にError: Could not find or load main class com.foo.Bar
java -jar assembly.jar
結果: build.sbt
が意図コマンドを実行し、正しく作成された組立後、得られたユーバージャー
mainClass in assembly := Some("com.foo.Bar")
の対象となる実行可能メインを指定します
java -cp assembly.jar com.foo.Bar
のような別の方法を使用すると、同じエラーメッセージが表示されます。
次に、新しいディレクトリでuber-jarの内容を抽出しました。私はcom/foo/
ディレクトリとBar.class
ファイルを見ることができます。私が試した抽出されたディレクトリのルートから :
java -cp . com.foo.Bar
と私は正しい結果を得ることができます。
はまた、エラーの理由を見つけようと、私が試した:java -verbose -jar assembly.jar
私はJavaのコアクラスがロードされて見ることができますが、私は私のパッケージのクラスのいずれかがロードされて表示されません。
ここで間違いがありますか?