問題タブ [aspectj-maven-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.
java - AspectJ の jar への織り込み vs. リフレクティブ コール
ねえ。私たちの Java プロジェクトでは、AspectJ を使用してサーバーログからいくつかの例外を消去しようとしています。必要なのは、(リフレクション呼び出しでも) トリガーされるように、アドバイスを jar ファイルに織り込むことです。
私たちはmavenとaspectj-maven-plugin 1.7.3を使用しています。私たちのプロジェクトを構築するとき、アドバイスはすべてのメソッドに織り込まれていますが、それらのいくつかではトリガーされません。
アドバイスの例を次に示します。
解析され、リフレクションによって実行される xml ファイルには、かなりの量のコードがあります。
この問題を回避するためのヒントはありますか?
maven - アスペクトをサードパーティの依存関係で定義されたのと同じ Maven モジュールに織り込むことはできますか?
関連モジュールの次のセットアップを含むマルチモジュールmavenプロジェクトがあります。
- 根
- コモンズアプリ
- バックエンド
- フロントエンド
- コモンズアプリ
モジュール フロントエンドは war に組み込まれ、Tomcat にデプロイされます。モジュール バックエンドは、jar としてパッケージ化された標準の Java アプリケーションです。私が達成しようとしているのは、(フロントエンドとバックエンドの両方で) 次の側面を機能させることだけです。
このアスペクトは、次のように commons-app-context.xml で Spring Bean としてセットアップされます。
このセットアップでは、around アドバイスは適切に機能していますが、before アドバイスはトリガーされません。私が見つけたものから、サードパーティのライブラリに織り込むには、aspectj-maven-plugin を使用する必要があると結論付けました。そこで、次のように commons-app モジュールの pom.xml にプラグインを追加しました。
このプラグインを使用すると、アドバイスが機能する前に、周りのアドバイスが機能しなくなります。これを正しく設定するのに苦労しているので、両方のアドバイスが期待どおりに機能しますが、役に立ちません。commons-appモジュールのログを構築するとき、両方のアドバイスが織り込まれていると言います:
ただし、フロントエンドを Tomcat にデプロイすると、before アドバイスのみがトリガーされます。常に両方のアドバイスを織り込むようにmavenを構成するにはどうすればよいですか?
java - spectj-maven-plugin のメモリ制限を増やす方法
Maven でプロジェクトをビルドしようとしていますが、次のエラーが発生します。
でspectj-maven-pluginを設定しようとしましpom.xml
たが、何の効果もありません:
ローカル コピーは問題なく動作しますが、このエラーは展開時にのみ発生します。どのように修正できますか?
java - Spring Aop エラー このアドバイスのために thisJoinPoint を遅延して構築できません
ポイントカット宣言:
アドバイス宣言がコンパイルされていません:
Aspectj-maven-plugin (1.5 バージョン) で Aspect をコンパイルすると、エラーが発生する"can not build thisJoinPoint lazily for this advice since it has no suitable guard [Xlint:noGuardForLazyTjp]"
ただし、同じアドバイスは JoinPoint 引数なしでコンパイルされます。
アドバイス宣言のコンパイル:
spring - new キーワードで作成されたオブジェクト内での Spring Bean の自動配線
次の解決策を見つけましたが、残念ながら機能させることができません。
https://stackoverflow.com/a/10998044/2182503
正常にコンパイルできますが、アプリケーションをテストすると、Spring Bean は常に null になります。
環境:
- トムキャット7
- JDK1.7/JRE7
- コンパイラ バージョン 1.7
- 春 3.2.4
- アスペクトJ 1.7.3
- 春の側面 4.0.0
POM
....
....
WebAppConfig:
月:
日:
java - Maven 構成: クラスパス jar 内のファイルを引数として渡す
いくつかの Maven プラグインjava.io.File
は、プラグインが検索して使用するファイルの相対/絶対位置を指定する構成パラメーターとして a を渡す必要があります/サポートします。
クラスパスのjar内からファイルを見つける必要があるプラグイン構成でプロパティファイルを指定する方法はありますか? 私は特にこれを知って、独自のXlinkDefault.propertiesファイルの場所になるように値を指定できるアスペクトj-maven-pluginで使用することを望んでいます。私の場合、ファイルはクラスパス jar 内にあります。Xlintfile
ちなみにmaven-2.2.1を使っています。
maven - spectj で perf4j を使用するとエラーが発生します (NoSuchMethodError)
私は、perf4j でアプリケーション ( cumulusrdf ) をプロファイリングするために、spectj で CTW を使用しようとしています。
私はmavenですべてをうまくコンパイルできます。コンソール出力には、プロファイリングを機能させるために使用している方法のエントリが含まれています。
私はaspectj:compile package
建物の目標を使用しています。生成された one-jar を実行しようとすると、次の例外が発生します。
アプリケーション用のものを除いて、パラメーターは使用しません。
私の pom.xml には、次の関連セクションがあります。
aspectj プラグインの定義:
関連するアーティファクトの依存関係:
one-jar プラグインの定義:
誰かが私が間違っていることを知っていますか?
spring - AspectJ: Initbinder で Autowired フィールドが null になる
ここで説明されているように AspectJ を実装しました: https://stackoverflow.com/a/10998044/2182503
@Autowired
私のフィールドが 内で null であることに気付くまで、このソリューションは正常に機能します@InitBinder
。フィールドは、 内でのみ null@InitBinder
です。
なぜそれらがnullの場合とそうでない場合があるのか 理解できません。(同じクラス内で)