問題タブ [maven-antrun-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.
maven - antrunプラグインに新しい環境変数を渡すにはどうすればよいですか?
maven-antrun-pluginとinstall4jを使用して、アプリケーションのインストーラーをビルドしています。javaが(システム)パス上にない場合は機能しません。タスクを実行するために新しいJavaプロセスをフォークしているので、環境変数を渡す方法が必要ですが、理解できません。
Install4JはEXE4J_JAVA_HOME
、Javaインストールを選択するために使用します。それをantrun-plugin経由でantに渡したいです。私はそれを行うためのいくつかのハックな方法を考えることができますが、私が見落としている単純なものがなければなりません。参考までに、これが私のantrun構成です。
maven - maven の antrun exec コマンドの出力を stdout にリダイレクトするにはどうすればよいですか?
Maven 3.0.3 を使用しています。「exec」コマンドを使用するこのantrunタスクがあります...
出力に echo ステートメントが表示されますが、標準出力に実行可能ファイルの出力が表示されません。エコー メッセージが送信されるのと同じ場所にリダイレクトするにはどうすればよいですか?
ありがとう - デイブ
maven - Maven を使用して複数の zip ファイル内のファイルを変更する
今日、私はこのタスクを実行したかったのですが、途中でいくつかの問題に出くわしました。だから私はここに私の問題と私が見つけた解決策を提示します。おそらく誰かがもっと簡単な解決策を知っています!
問題はこれでした: Maven2 でビルドされた Java プロジェクトの配布パッケージをビルドしようとしていました。前のステップで、manifest.xml という名前のファイルをすべてルートに含むいくつかの zip ファイルが生成されたので、このすべての ZIP ファイルでこの XML ファイルを変更したいと考えました。これはスキームです:
maven - Maven Antrun プラグインでディレクトリを設定する
jquery-ui を webapp にダウンロードしました。これには、build.xml
圧縮と縮小の機能があります。build.xml
今、私の中からこれを実行したいと思いますpom.xml
:
しかし今、s buildfile is wrong. It creates a dist folder on the wrong place. Here's the
jquery-ui からのこの build.xml` の動作: https://github.com/jquery/jquery-ui/blob/master/build/build.xml
pom.xml と同じ場所 (私が実行する場所と同じ場所mvn clean package
) に dist フォルダーを作成し、その場所に作成する必要があります。src/main/webapp/resources/js/jquery-ui/build
build.xml
指定したディレクトリ(作業ディレクトリ)から実行することはできますか? Ant タスクのドキュメントにアクセスできない: http://ant.apache.org/manual/CoreTasks/ant.html
編集: pom.xml
実行mvn clean package
すると、jquery-ui の build.xml の縮小ターゲットで次のエラーが発生します。
正しいパスは、上記の代わりに ${basedir}/src/main/webapp/resources/js/jquery-ui/build/dist/jquery-ui-1.9pre/ui/minified/jquery-ui.min.js である必要があります言及された...
jquery - mavenを使用したjQuery+jQueryUIリソースの処理
これは私の現在のフォルダ構造です:
ご覧のとおり、にはがありjs
ますsrc/main/webapp/resources
。私はこれらのGitHubリポジトリをチェックするためにscmプラグインを使用しています:
https://github.com/jquery/jquery
https://github.com/jquery/jquery-ui
このチェックアウトの後、連結と縮小を行い、、、をに移動するために、ビルドメカニズムを使用する必要がtarget/jquery/dist/jquery.min.js
ありtarget/jquery-ui/build/dist/jquery-ui.min.js
ます。jquery-ui/build/dist/jquery-ui-1.9pre/ui/minified/i18n/jquery-ui-i18n.min.js
target/myproject-1.0-SNAPSHOT/resources/js
これが私のpom.xmlの必要なスニペットです:
次の手順が必要です。
exec-maven-plugin
jqueryの連結+縮小メカニズムを使用するために使用します(Makefile)maven-antrun-plugin
jquery-uiの連結+縮小メカニズム(Ant build.xml)を使用するために使用します- 縮小されたjquery、jquery-ui、およびjquery-ui-i18njsファイルをに移動します
target/myproject-1.0-SNAPSHOT/resources/js
- 次に、他のライフサイクルフェーズを実行します
ただし、ステップ2で停止しますmaven-antrun-plugin
。具体的には、外部シェルスクリプトの実行に関する問題は次のとおりです。
スクリプトは(/home/danny/myproject/dist/jquery-ui-1.9pre/ui/minified/jquery-ui.min.js
ではなく/home/danny/myproject/target/jquery-ui/build/dist/jquery-ui-1.9pre/ui/minified/jquery-ui.min.js
)間違ったディレクトリを検索します
編集:問題は次のとおりです:minify-js.shが間違った2番目の引数($ 2)を取得します。これをmodify-js.shに追加すると、次のようになりecho "test: $1 -> $2"
ます。test: /home/danny/myproject/target/jquery-ui/build/dist/jquery-ui-1.9pre/ui/jquery-ui.js -> /home/danny/myproject/dist/jquery-ui-1.9pre/ui/minified/jquery-ui.min.js
しかし、なぜですか?
EDIT2:これを修正するためにjquery-uiにリクエストをプルしました
しかし、ここで、縮小されたjquery、jquery-ui、およびjquery-ui-i18njsファイルをのtarget/myproject-1.0-SNAPSHOT/resources/js
後に移動する方法を知る必要がありますwar:excluded
。
ここでの最良の方法は何ですか?
maven - Maven:Castor、antrun、earプラグインを処理するためのマーケットプレイスエントリが見つかりません
MavenプロジェクトをEclipseにインポートしています。m2eプラグインをインストールしていて、マシン上のmaven2.2.1を指しています。
次の3つのエラーが発生します。
- Eclipseでcastor-maven-plugin:1.0:generateを処理するマーケットプレイスエントリが見つかりません
- Eclipseでmaven-antrun-plugin:1.1:runを処理するマーケットプレイスエントリが見つかりません
- Eclipseでmaven-ear-plugin:2.3.1:generate-application-xmlを処理するためのマーケットプレイスエントリが見つかりません
提供されたリソースをいただければ幸いです。
ありがとう
maven - maven-antrun-pluginによるテストの実行を停止する方法
編集:解決済み私は自分のpomで2回設定しました。
Mavenでプロダクションプロファイルを設定しています。そして、正しいproduction.properties-filesをコピーして標準ファイルを削除するために、私はmaven-antrun-pluginを使用しています。
しかし、私はテストを実行したくありません。そして、何らかの理由で、このプラグインは、機能していない(そして、使用されないために機能しないはずの)いくつかのcanoo-web-testsを実行しようとします。
antrunプラグインでファイルのみをコピーする方法についてのアイデアはありますか?
antrunコードは次のとおりです。
そして、これがいくつかのテストを行おうとしていることを示すエラーです:
そして、それがweb-tests.xmlを読み取ろうとしていることを示すスタックトレースであり、そのファイルにエラーがあるため、ビルドは失敗します。
maven - カスタムビルドのjarファイルをMavenメインアーティファクトとして登録するにはどうすればよいですか?
jarファイルを配信する予定のプロジェクトがあります。
ただし、jarはカスタムの方法で構築されているため、jar:jarで行われるデフォルトのパッケージ化は無効になっています。
しかし、既存のjarにshade:shadeを適用したい場合、エラーが発生します
プロジェクトのメインアーティファクトは存在しません。
mavenは、カスタムツールによって作成された.jarファイルを認識していないと思います。antrun attachArtifactが機能しないため、通知する方法
私が得るエラーは
Ant BuildExceptionが発生しました:org.apache.maven.artifact.InvalidArtifactRTException:アーティファクト{:jar}の場合:アタッチされたアーティファクトは、対応するメインアーティファクトとは異なるIDを持っている必要があります。
したがって、これはメインアーティファクトを登録する方法ではありません...(カスタムJavaプラグインを作成せずに)何かありますか?
ありがとう、Lukasz
maven - Mavenフェーズに実行をアタッチせずにMaven-antrun-pluginターゲットを呼び出す方法は?
プロジェクトの初期設定ファイルにはmaven-antrun-pluginを使用しています。ただし、jetty:runを起動するたびではなく、開発環境の初期化を最初に開始するときに、構成ファイルを1回だけ初期化する必要があります。
たとえば、プロセスリソースにフェーズをアタッチすると、jettyを起動するたびに、構成ファイルがリセットされます。
だから私はこのようにantrunを設定しました:
mvn antrun:runを起動すると、次のエラーが返されます:「[INFO]定義されたantターゲットがありません-スキップされました」。また、target: "mvn antrun:run -Dtarget=init_config_files"を指定した場合も同じです。
maven - maven-antrun-plugin で foreach を呼び出す
Web プロジェクトのディレクトリで LESS CSS プリプロセッサを実行するように Maven をセットアップしようとしています。基本的な流れは次のとおりです。
- Maven は maven-antrun-plugin を呼び出します。
- Ant-contrib
<foreach/>
はディレクトリをループし、すべての .less ファイルを見つけてターゲットを呼び出します。 - ターゲットは、ファイルを変換する LESS を実行する Rhino を実行します。
これを行うには、次の XML があります。
私が遭遇している問題は、「メイン」ターゲットが実行を開始するが、失敗することです<foreach>
:
Ant の何かが原因で POM ファイルを読み込もうとしているようで、ターゲットを探している可能性があります。両方のターゲットがファイル target/antrun/build-main.xml および target/antrun/build-processLessFile.xml に生成されていることがわかります。そのため、それが検索対象のディレクトリになります。