Chibimaro
@Chibimaro (ちびまろ)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Spring AOPはデフォルトで存在するのか?

Q&A

Closed

Spring AOPに関する質問です。

現在STS Ver.4.7.2.RELEASEを使用してAOPの学習をしようとしています。
こちらの記事を参考に進めていたところ、pom.xml(依存関係)にAOPを追加している箇所があるのですが、追加しなくてもデフォルトで使用できるようになっているのでは?と疑問に感じました。

というのも、実際にpom.xmlにdependencyを追加しないで@Aspectを追加してもエラーが発生しなかったからです。

AspectBean
package com.example.aop.bean;

import org.aspectj.lang.annotation.Aspect;
import org.springframework.stereotype.Component;

@Component
@Aspect
public class AspectBean {

    private int id;

    private String name;

    private int old;

//getter,setterは省略

}


私は、AOPは依存関係を追加しないと使用できないと認識していたのですが、そもそもこの考えが間違えているという可能性はありますでしょうか?

初歩的な質問で申し訳ありませんが、調べてもうまくヒットしなかったので教えていただけると幸いです。

0

2Answer

上記内容でエラーが発生しないと言いましたが、STSがフリーズし、再起動を行うとエラーが発生したので、クローズとさせていただきます。

0Like

pom.xmlにmvn installをすると以下ディレクトリにaopなどがインストールされるかと思います。
C:\Users\[ユーザー名]\.m2\repository\

他の環境など、まだ実行していない場合は存在しないと思うので、それをなんとか取得するためにpom.xmlはあるのかと思います。

手動でjarファイルを揃えることはできるようですが、それは高度な話かと思うので・・・

0Like

Comments

  1. @Chibimaro

    Questioner

    回答ありがとうございます。
    要はaopをより簡単に使えるようにするために、pom.xmlでプラグインを取得している
    というイメージしてますが、合ってますか?

    確かに少し手動で揃えるのは手間がかかりそうですね…
    でも手動で入れる際に複数のjarを揃えないといけないというのは初耳でしたので助かりました!!
    ありがとうございます!
  2. おしいけど少し違います。

    このプロジェクトはいろんなライブラリを使っていて、それは pom.xml で列挙している。
    本来は手でプラグインをダウンロードして配置しないと動かないところを maven で一括ダウンロードしてくれて便利ってところです。

    python の requirements.txt や
    php の composer の composer.json
    ruby の Gemfile
    みたいな位置かと思います。
  3. @Chibimaro

    Questioner

    なるほどですね!!
    すごい分かりやすい説明ありがとうございます。
    腹に落ちた感じでスッキリしました。

Your answer might help someone💌