JDK tools.jar を maven 依存にする。
2023-07-17 13:24:51
質問
JDK tools.jar をコンパイル時の依存関係に置きたいと考えています。いくつかの例では システムパス プロパティを使用するような例を見つけました。
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<scope>system</scope>
<systemPath>${java.home}/../lib/tools.jar</systemPath>
</dependency>
問題は、Mac Os Xではパスが正しくないことです(ただし、WindowsとLinuxでは正しいです)。それに対して、正しいパスは ${java.home}/../Classes/classes.jar です。 .
私は、システムが Mac Os X として検出された場合、値が次のように設定されるような maven プロパティを定義する方法を探しています。 ${java.home}/../Classes/classes.jar に設定されます。 に設定され、それ以外の場合は を${java.home}/../lib/tools.jarに設定してください。 (ANTで可能なように)。どなたかお分かりになる方いらっしゃいますか?
どのように解決するのですか?
mavenプロファイルを紹介していただき、ありがとうございます。
私は上記のようにプロファイルを使用し、目的のファイルの存在に基づいてプロファイルをアクティブにすることで、:
<profiles>
<profile>
<id>default-profile</id>
<activation>
<activeByDefault>true</activeByDefault>
<file>
<exists>${java.home}/../lib/tools.jar</exists>
</file>
</activation>
<properties>
<toolsjar>${java.home}/../lib/tools.jar</toolsjar>
</properties>
</profile>
<profile>
<id>mac-profile</id>
<activation>
<activeByDefault>false</activeByDefault>
<file>
<exists>${java.home}/../Classes/classes.jar</exists>
</file>
</activation>
<properties>
<toolsjar>${java.home}/../Classes/classes.jar</toolsjar>
</properties>
</profile>
</profiles>
プロパティセクションは、指定されたプロパティの存在に基づいてプロファイルを有効にするために、有効化セクションでのみ使用することができます。プロパティを定義するには、上記のようにプロパティセクションを使用する必要があります。
関連
-
XMLファイル操作時のjava.util.NoSuchElementExceptionを解決する方法。
-
javaの非静的メソッドを静的に参照することができない
-
名前 'XXX' を持つ Bean の作成に失敗しました。自動依存関係の注入に失敗しました 解決方法
-
無効な文字定数
-
java.sql.SQLException: 結果セットの開始前
-
Java の double データ型における 0.0 と -0.0 の問題
-
switch case文のcaseの後の列挙定数は列挙型なし
-
[解決済み] Mavenを使用して、依存関係を持つ実行可能なJARを作成するにはどうすればよいですか?
-
[解決済み] JDKとJREの違いは何ですか?
-
[解決済み] Mavenに最新バージョンの依存関係を使用するように指示するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Eclipseは、ポップアップA Java Exception has occurred.を実行し、エラーException in threadの解決策を報告します。
-
Eclipse の問題 アクセス制限。タイプ 'jfxrt' はAPI解決されていません。
-
Javaでよくある構文エラー
-
Jsoup-Crawlingの動作
-
BindException: アドレスはすでに使用中です:バインドエラー解決
-
JNIエンカウンターエラー:構造体またはユニオンではない何かでメンバー 'FindClass' のリクエスト
-
eclipse 実行 Java、エラー: 選択を起動できず、レシーバーもありません。
-
1分でわかる!恋人の写真をIDEAの背景画像に設定する方法【おすすめ集
-
switch case文のcaseの後の列挙定数は列挙型なし
-
Zipファイルの圧縮・解凍にantを使用する