3

Scala Mavenプロジェクトを作成し、コンパイル時にScalaクラス内でAspectJアスペクトを織り込むことは可能ですか?

ロード時のウィービングを機能させることはできましたが、これまでのところコンパイル時では成功していません。

アスペクトは単にScalaクラスに織り込まれていません。私が理解していることから、コンパイル時のウィービングには特定のJavaコンパイラー(AspectJコンパイラー別名ajc)が必要です。ajcはScalaをコンパイルできないことを理解しています。

Scalaに相当するajcはありますか?それとも、コンパイル時のウィービングをScalaで動作させる別の方法ですか?

4

2 に答える 2

2

回答 1 は真のコンパイル時のウィービングではありません。コンパイル済みのクラスのバイナリ ウィービングです。たとえば、scala クラスが適切にコンパイルするためにアスペクトを必要とする場合、それは機能しません。scala でのコンパイル時のウィービングの問題は、まだ未解決の問題だと思います。

ajc は scala のコンパイル方法を知らない可能性が高いという元の投稿者による評価に同意します。

于 2014-08-19T15:20:38.150 に答える
1

AJC の -inpath スイッチを使用するのはどうですか? ディレクトリまたは JAR 内の .class ファイルを受け入れ、それらに織り込みます。Scala は .class ファイルにコンパイルされるため、動作するはずです。AJC のドキュメントをお持ちであることは間違いありませんが、ここにリンクがあります。

于 2012-12-04T21:14:50.320 に答える