Когда я запускаю java-программу из идеи Intellij, я заметил, что они выполняются через отражение классом AppMain (from idea_rt.jar).Запуск классов Java без использования класса AppMain в Intellij
IntelliJ продукта Спецификация:
IntelliJ IDEA (Community Edition) IC-145.184.1 Сложение # IC-145,184, построен на 1 марта 2016 года JRE: 1.8.0_60-b27 x86
Для Например: если я выполнить ниже код,
public class Example{
public static void main(String[] args) {
throw new RuntimeException();
}
}
ниже приводится выход, в котором есть 5 внутренних вызовов от AppMain
Исключение в потоке "основного" java.lang.RuntimeException на Example.main (Example.java:12) при > sun.reflect.NativeMethodAccessorImpl.invoke0 (нативный метод) при sun.reflect. NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) на sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) на java.lang.reflect.Method.invoke (Method.java:497) при com.intellij .rt.execution.application.AppMain.main (AppMain.java:144)
Как вы можете видеть выше всю информацию трассировки стека имеет 5 дополнительные трассировки стека информация зарождение из класса AppMain из idea_rt.jar
Есть в любом случае для запуска Java Applcation от IntelliJ IDE без использования AppMain?
Зачем вам все это? Вы всегда можете запускать его как автономный с помощью JRE. Но так как вы используете IDEA, почему бы вам даже удивляться, что это тот, который запускает ваше приложение? Вы пытаетесь минимизировать использование стека или что (и если да, то по какой причине)? – Kayaman
Я сохраняю трассировку стека в своем приложении, каждый раз, когда я беру трассировку стека, это дало бы мне лишние 5 строк, которые раздражают .. либо мне нужно вручную пропустить их (что связывает код только с одной IDE и позже удалите этот код).Поэтому мне нужен способ не запускать Java-приложение в IDEA без использования AppMain Итак, обратите внимание: когда я просто запускаю приложение с конфигурацией Debug, дополнительная информация не отображается. – chebus
Почему бы просто не осмотреть стек и сохранить только кадры, начиная с 'Example.main()'? Ваш подход к этой «проблеме» довольно плох, если вы попытаетесь решить его через IDE. – Kayaman