Я изучаю aspectJ и встречал три вопроса. Зачем нужно добавлять все файлы jar в classpath, но не только aspectjrt.jar (если просто добавить один файл aspectjrt.jar, он выведет Could not find or load main class org.aspectj.tools.ajc.Main
)? почему я уже определил основной класс и успешно скомпилировал ajc, а затем java packageName.MainClass error? Ошибка ниже:AspectJ Ошибка: Не удалось найти или загрузить основной класс aop.HelloTest
Error: Could not find or load main class aop.HelloTest
Вот код:
package aop;
public class HelloTest {
public static void main(String[] args) {
Hello hello = new Hello();
hello.hello();// hello method just outout one word
}
}
//aspectj class which under the same aop package, attention these two file are not in the same file.
public aspect AspectJTest {
before(): execution(* aop.*.*(..)){
System.out.println("stimulate authority check");
}
}
Вот мой рабочий процесс:
ajc -d . *.java
java aop.HelloTest
'ява -cp aspectjrt.jar aop.HelloTest' может быть? –
Введите 'echo $ CLASSPATH', выводящий такой файл jar в терминал, полностью верьте' cp' не сработает. – Crabime