OSX Mountain Lion へのアップグレード以来、Eclipse と Maven の環境変数の設定に問題があります。
私の目標は、Eclipse で Maven コマンドを実行することです。このコマンドは、リモート リポジトリからアーティファクトをダウンロードする (依存関係を解決する) 必要があります。リポジトリは HTTPS 経由で認証されます。
Guide to Remote repository access through authenticated HTTPSに従い、以下の行を .bash_profil に追加しました。ターミナルでmavenを実行している場合、すべて正常に動作します。
export MAVEN_OPTS="-Xmx512m -Djavax.net.ssl.trustStore=/Users/myUser/.knowncerts/trust.jks -Djavax.net.ssl.trustStorePassword=trustPwd"
ただし、これは端末でのみ機能し、アプリケーションでは機能しません。以前の OSX バージョンでは、MAVEN_OPTS 変数を
~/.MacOSX/environment.plist
( Mac OS X Lion で環境変数を設定するも参照してください) これは OSX Lion で完全に機能しました。
しかし、Apple は Mountain Lion でのこの動作を変更しました。environment.plist はサポートされなくなりました。新しい方法は、.app 自体の Info.plist を編集することです (システム環境変数は Mountain Lion で設定されていますか? )。すべての変数を含むLSEnvironment辞書を追加する必要があるようです。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>LSEnvironment</key>
<dict>
<key>M2_HOME</key>
<string>/usr/share/maven</string>
<key>MAVEN_OPTS</key>
<string>-Xmx512m -Djavax.net.ssl.trustStore=/Users/myUser/.knowncerts/trust.jks -Djavax.net.ssl.trustStorePassword=trustPwd</string>
</dict>
<key>CFBundleExecutable</key>
<string>eclipse</string>
<key>CFBundleGetInfoString</key>
<string>Eclipse 3.8 for Mac OS X, Copyright IBM Corp. and others 2002, 2011. All rights reserved.</string>
<key>CFBundleIconFile</key>
<string>Eclipse.icns</string>
<key>CFBundleIdentifier</key>
<string>org.eclipse.eclipse</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>Eclipse</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>3.8</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>3.8</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleLocalizations</key>
<array>
<string>ar</string>
<string>cs</string>
<string>da</string>
<string>el</string>
<string>en</string>
<string>es</string>
<string>de</string>
<string>fi</string>
<string>fr</string>
<string>hu</string>
<string>it</string>
<string>iw</string>
<string>ja</string>
<string>ko</string>
<string>nl</string>
<string>no</string>
<string>pl</string>
<string>pt_BR</string>
<string>pt</string>
<string>ru</string>
<string>sv</string>
<string>tr</string>
<string>zh_HK</string>
<string>zh_TW</string>
<string>zh</string>
</array>
<key>Eclipse</key>
<array>
<string>-keyring</string>
<string>~/.eclipse_keyring</string>
<string>-showlocation</string>
</array>
</dict>
</plist>
ご覧のとおり、Eclipse.app の Info.plist を変更しました。しかし、これはうまくいきませんでした。Eclipse 内で Maven を開始します。しかし、リモート リポジトリが信頼されていないため、maven はアーティファクトをダウンロードできません。Eclipse は、Info.plist で定義した環境変数を使用していないと思います
この問題を解決する方法について何か提案はありますか?
回答ありがとうございます。