2012-01-02 5 views
0

次の操作を実行するコードを記述するための正しい方法は何ですか決定:私は場合Grailsの - クラスのソース.jarファイルが

Base64 base64 = new Base64 
base64.getClass().getSourcePackageAndVersion() // ??? 

私は私の現在のGrailsプロジェクトで検出しようとしていますBase64を commons-codec-1.3.jarまたはcommons-codec-1.4.jarから取得する。デバッグ/ devモードで1.4バージョンを使用するように強制する方法はありますか?

答えて

0

あなたはクラスがこれでからロードされたjarファイルまたはclassesディレクトリを見つけることができます。

base64.getClass().protectionDomain.codeSource.location 

か、すでにクラスていたのは:

Base64.protectionDomain.codeSource.location 
1

私はあなたの問題は(ちょうどあなたのランタイムENVを置き換える)依存関係レポートを経由して、あなたのDEV /デバッグビルドの依存関係ツリーを印刷を通じて最高の解決だと思う:

grails dependency-report runtime 

ご使用の環境を強制的にその情報を使用することができますBase64クラスの正しいバージョンを使用します。

+0

私のGrailsは理解していませんdependency-報告書 – BuddyJoe

+0

あなたはgrailsのバージョンを使用していますか? 1.xと2.xでも利用できるはずです:http://grails.org/doc/2.0.x/ref/Command%20Line/dependency-report.html –

+0

私が最初に試したときに間違ったフォルダに残っていましたそれを実行します。今、私の環境として「dev」という言葉を使用すると、私はアイビーに関連したエラーを受け取ります。 – BuddyJoe

関連する問題