問題タブ [xsbt-web-plugin]
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 - sbt-web アセット出力ディレクトリのセットアップ
シナリオ
Scala.js と LESS を使用したかなり単純な Scalatra プロジェクトがあり、そのために sbt ビルド構成を作成する必要があります。プロジェクトは、jvm、js、共有コードの 3 つの部分に分かれています。
私の現在のビルド構成では、WAR パッケージに xsbt-web-plugin を使用していますが、LESS ソースの処理を処理できるように sbt-web をセットアップしたいと考えています。
問題
現在の構成では、package コマンドを実行すると、sbt-web はアセットをWEB-INF/classes/main/META-INF/resources/webjars/dataretrieverjvm/0.1.0-SNAPSHOT に配置します。代わりにWEB_INF/publicに配置したいのですが、それを達成する方法がわかりません。
これは、現時点で私の Build.scala がどのように見えるかです:
部分解
この方法でアセットはWEB-INF/publicにコピーされますが、残念なことに sbt-web はそれらをWEB-INF/classesにコピーします。
scala - Sbt-LESS: TypeError: [object Object] は関数ではなく、オブジェクトです
Play プロジェクトで Sbt-less を 1.0.6 から 1.1.0 に更新した後、次のことをしようとすると、このエラー出力が表示されますgit push heroku master
。
プロジェクト自体は、私がコーディングしているマシンで正常に動作します。heroku run "sbt clean-files"
効果がないように見えるものを試しました。フォルダーを削除することも役立つ可能性があることをどこかで読み/target
ましたが、Heroku の bash ターミナルからそれらを削除しようとしても、変更は行われません。どんなアドバイスも役に立ちます、事前に感謝します!
編集: 私はかなり明白な回避策を考え出しました (おそらくすでにご存知の方も多いでしょう) が、Heroku にアップロードするたびに sbt なしの 1.0.6 に戻すことができます。面倒ですが、少なくとも仕事は完了します。
scala - WAR ファイルをパッケージ化しない xsbt-web-plugin を使用したマルチプロジェクト ビルド
複数のプロジェクトがあり、そのうちの 1 つを WAR ファイルとしてパッケージ化する必要があります。ただし、JAR ファイルとしてパッケージ化されます。ここに私のビルドファイルがあります:
sbt - xsbt は、システム プロパティを使用して jvm をフォークしました
xsbt の最新バージョンでは、jetty コンテナーがフォークされ、システム プロパティの受け渡しが機能しなくなっていることに気付きました。
jetty コンテナーのポートを設定するために sbt を起動するときに、システム プロパティを介してポート番号を渡す簡単な方法を探していました。これが可能かどうかは明らかではありません。
また、現在コンテナーにオプションを渡すことができないため、ローカル開発で問題が発生しています。これを行うことができずに、設定をすばやく便利に変更する方法がわかりません。フォークされた Java プロセスがシステムの小道具を継承または渡すことができない理由はありますか?
また、そもそもフォークされたプロセスでコンテナを実行する必要がある理由が何であるかにも興味があります。