12

sbt でアセンブリ プラグインを使用して、プロジェクトをアセンブルします。ただし、「java -jar xx.jar」で実行するとエラーが発生します -

「メインマニフェスト属性なし」。

私のsrc/main/scala/ディレクトリには2つのファイルがあり、それぞれにオブジェクトが拡張Applicationされているためだと思います。これは、プロジェクトに2つのメインエントリがあることを意味します。しかし、2 つのアプリケーションが必要です。1 つはサーバーで、もう 1 つはテスト クライアントです。

two-main-entryscala sbt でこの問題を処理する方法。前もって感謝します。

4

3 に答える 3

23

SBT ビルド ファイルで、メイン クラスを定義します。

build.sbt を使用している場合は、次のようになります。

mainClass in assembly := Some("com.domain.Main")

Build.scala を使用している場合は、次のようにすることができます。

lazy val app = (project in file("app")).
  settings(assemblySettings: _*)
  settings(mainClass in assembly := Some("com.domain.Main"))
于 2015-01-09T10:45:34.263 に答える