問題タブ [sbt-assembly]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - scalatraを使用したsbt-assemblyによってwebappリソースを含む実行可能な単一のjarを作成する方法
sbtとxsbt-web-pluginを介してscalatraフレームワークを使用してwebappを作成しています。
すべてのリソース(テンプレート、css、js)を1つのjarにパッケージ化したい。
sbt-assemblyプラグインを使用したsbtでは、assembly
コマンドはプロジェクトのすべての依存関係を含む単一のjarを作成します。
$ java -jar myproject.jar
ブラウザで開きます
リソースを読み込めませんでした:[/ WEB-INF / views / index.scaml]; [null]以内ですか?
jarを解凍して、が含まれていないことを確認しましたsrc/main/webapp/*
。
src/main/webapp/*
実行可能jarをインクルードおよびビルドするためにsbtを構成するにはどうすればよいですか?
scala - sbt-assembly を使用して MANIFEST.MF にベンダー情報を追加する
sbt-assembly を使用して実行可能な jar を作成していますが、jai imageio が MANIFEST.MF ファイルからベンダー名をロードするため、アプリケーションがクラッシュします。META-INF/MANIFEST.MF ファイルを手動で編集した場合:
に
すべて正常に動作します。
追加の実装情報を jar に含めるように sbt または sbt-assembly を構成するにはどうすればよいですか? または、これを回避する別の方法はありますか?
(ps: パッケージ情報を検索する場所への参照: http://www.java.net/external?url=http://www.java2s.com/Open-Source/Java-Document/6.0-JDK- Modules/Java-Advanced-Imaging/com/sun/media/imageioimpl/common/PackageUtil.java.htm )
scala - sbt-assemblyを機能させる
これまでのところ、ScalaプロジェクトをSBTで(Typesafeスタックを介して)コンパイルしてきました。sbt-assemblyを使用して、複数のマシンでコードを実行したいと思います。指示に従って、私が行った唯一の変更はproject/Build.scala
ファイルにありました。関連する部分は次のとおりです。
ただし、実行するとsbt compile
、次のエラーが発生します。
sbt.ResolveException: unresolved dependency: com.eed3si9n#sbt-assembly/scala_2.9.1/sbt_0.11.2;0.8.3: not found
。
私は何が間違っているのですか?
ありがとう!
編集(フォルダは)とbuild.sbt
同じフォルダにファイルを
作成し、次の2行を含めます。Build.scala
/project/
エラーは次のとおりです。
編集2
うーん、成功した後、コンソールsbt compile
に入って入力できるようにする必要がありますか?sbt
assembly
編集3JKはそれを手に入れました。build.sbt
GitHubREADMEで指定されている情報を追加する必要がありました。
sbt - マージ戦略が期待どおりに動作しない
build.scala には次のものがあります。
ただし、実行すると次のようassembly
に表示されます。
「最初の」戦略ではなく、「重複排除」戦略を使用していることを示しています。これにより、次のエラーが発生します。
scala - Sbt アセンブリが Mac でハングする
assembly を使い始めた日から、この問題が発生しました。Mac で sbt アセンブリ (どのプロジェクトでも) が完了しません。最後のステップでハングします。この理由の 1 つです。コードを Linux ボックスに転送し、そこでビルドします。他の誰かがこれを経験しましたか? . どのようにデバッグを進めることができるかについてのアイデアはありますか? . Lion と Java 1.6.0_37 がありました。マウンテン ライオンにアップグレードされました
scala - sbt-assembly を使用した assembly-merge-strategy の問題
sbt-assemblyを使用して、scala プロジェクトをデプロイ可能な fat jar に変換しようとしています。sbt でアセンブリ タスクを実行すると、次のエラーが発生します。
sbt-assembly ドキュメントから:
複数のファイルが同じ相対パスを共有する場合 (たとえば、複数の依存関係 JAR 内の application.conf という名前のリソース)、デフォルトの戦略は、すべての候補が同じ内容を持ち、そうでない場合はエラーになることを確認することです。この動作は、次の組み込み戦略のいずれかを使用するか、カスタム戦略を作成して、パスごとに構成できます。
MergeStrategy.deduplicate
上記のデフォルトですMergeStrategy.first
クラスパス順で最初に一致するファイルを選択しますMergeStrategy.last
最後のものを選ぶMergeStrategy.singleOrError
衝突時にエラーメッセージを表示して救済しますMergeStrategy.concat
一致するすべてのファイルを単純に連結し、結果を含めますMergeStrategy.filterDistinctLines
連結もしますが、途中で重複を除外しますMergeStrategy.rename
jar ファイルに由来するファイルの名前を変更しますMergeStrategy.discard
一致するファイルを単に破棄します
これにより、build.sbt を次のようにセットアップします。
build.sbt の最後の行には、次のものがあります。
ここで、SBT を実行すると、次のエラーが表示されます。
ここで私が間違っているかもしれないことを誰かが指摘できますか?
ありがとう
scala - Scala プロジェクトの sbt アセンブリを使用しながら、jar 内に Hyperic Sigar ライブラリを含める
私は sbt で Scala プロジェクトを構築し、sbt-assembly プラグインでファット jar を作成しています。に以下を追加することで、管理されていない jar (Sigar jar など) を追加できますbuild.sbt
。
*.so
ただし、これを実行しようとすると、ライブラリがjarに含まれていないため、次のエラーが発生します。
含めたいライブラリがlib/hyperic-sigar-1.6.4/sigar-bin/lib/*.so
あり、jar 内のクラスパスのディレクトリにリンクする必要があります。このようなマッピングを行うために私が知っている唯一の方法は次のとおりです。
これにより、*.so
ライブラリがjar のルートに追加されますが、特定のディレクトリには追加されません。lib/hyperic-sigar-1.6.4/sigar-bin/lib/*.so
jar のクラスパスのディレクトリからマップするリソース マップを指定するにはどうすればよいですか? 私がやろうとしていることの用語は何ですか?
scala - Akka fat Jar の作成
Akka を使用していくつかの外部アプリケーションと通信する Nutch プラグインを作成する必要があります。これを行うには、プラグインをファット Jar としてパッケージ化する必要があります - 私はsbt-assemblyバージョン 0.8.3 を使用しています。
プラグインを実行しようとすると、例外が発生します
Akka が見つからなかったかのようにreference.conf
。そのファイルを正しくパッケージ化sbt-assembly
できるはずなので、これは奇妙です。実際、作成されたjarでそのコンテンツを見ることができます。
私build.sbt
はこのように見えます:
最後の行は、nutch と hadoop の間の競合を修正するために必要です。
Akka アプリケーションをパッケージ化する正しい方法は何ですか?
scala - マルチプロジェクト ビルド用の sbt アセンブリ
このようなマルチプロジェクトsbtビルドファイルがあります
すべての依存関係 + コア + ハンドラーを含むアセンブリ jar を構築するにはどうすればよいですか