У меня есть 2 jar, давайте назовем их a.jar и b.jar.
b.jar зависит от a.jar.
В a.jar я определил класс,давайте назовем это StaticClass.В StaticClass я определил статический блок, вызвав метод с именем "init":
public class StaticClass {
static {
init();
}
public void static init () {
// do some initialization here
}
}
в b.jar, у меня есть main, поэтому в main я ожидаю, что метод init ()был вызван, но на самом деле нет.Я подозреваю, что это потому, что StaticClass не был загружен jvm, кто-нибудь может сказать мне
- Правильно ли сделан мой вывод?
- Что запускает jvm для загрузки класса?
- Как автоматически выполнить статический блок?
Спасибо