От новичка до гуру: Курсы программирования на CyberDuff

Как определить, какая команда Netbeans выполняется для запуска проекта?

Я разрабатываю приложение Java, используя Netbeans и Maven. Я изо всех сил пытаюсь запустить проект как отдельное приложение. С запуском проекта из Netbeans все в порядке, но запуск исполняемого файла jar приводит к ошибке (не удается загрузить файл данных).

Мне нужно знать точно, какие команды Netbeans выполняет для запуска приложения. Однако окно вывода Netbeans показывает мне только то, что приложение пишет «назад». Есть ли способ выяснить/отобразить команды, которые Netbeans использует для запуска проекта?

Спасибо

РЕДАКТИРОВАНИЕ: Запуск приложения Java и загрузка файлов не здесь проблема. Я могу запустить приложение, и библиотеки загружаются правильно. Проблема здесь в том, чтобы понять, как Netbans запускает приложение (просматривая выполняемые команды).

29.03.2017

  • Вы создали одну банку, содержащую все данные, манифест с которыми дает основной класс с использованием Maven?. как создать одну банку?. 29.03.2017
  • Я сделал, запуск приложения Maven вне Netbeans здесь не проблема. Проблема в том, что я получаю некоторую ошибку при попытке загрузить файл. Однако, когда я запускаю приложение из Netbeans, я не получаю эту ошибку. Поэтому мне нужно выяснить, точно какие команды Netbeans выполняет для запуска проекта. 29.03.2017
  • NetBeans включит используемую командную строку Maven в окно вывода. Это самая первая строчка. Но для запуска сгенерированного jar-файла из командной строки потребуется совершенно другая команда, так как это обычно не делается через maven. Обычно это будет что-то вроде java -cp ..... your.main.Class или (если вы предоставили манифест) просто java -jar your.jar 03.04.2017
  • Попробуйте установить для параметра Verbosity значение Verbose в разделе Инструменты › Параметры › Ant. 04.04.2017

Ответы:


1

Netbeans выводит вызываемую им команду в самой первой строке вывода.

Я использую Netbeans 8.2, и вот как это выглядит, когда я нажимаю большую зеленую кнопку Выполнить в проекте maven:

Вывод Netbeans

Первая строка гласит (отформатирована для лучшей читабельности):

cd D:\test;
"JAVA_HOME=C:\\Program Files\\Java\\jdk1.8.0_112" 
"M2_HOME=C:\\Program Files\\apache-maven-3.3.3"
cmd /c "\"\"C:\\Program Files\\apache-maven-3.3.3\\bin\\mvn.cmd\"
    -Dexec.args=\"-classpath %classpath com.test.AppStarter\"
    -Dexec.executable=\"C:\\Program Files\\Java\\jdk1.8.0_112\\bin\\java.exe\"
    -Dexec.workingdir=D:\\test\\target\\dist
    -Dmaven.ext.class.path=\"C:\\Program Files\\NetBeans 8.2\\java\\maven-nblib\\netbeans-eventspy.jar\"
    -Dfile.encoding=UTF-8
    org.codehaus.mojo:exec-maven-plugin:1.2.1:exec\""

Из этой строки я могу сказать, что Netbeans:

  • переходит в каталог проекта
  • устанавливает переменные окружения (JAVA_HOME и M2_HOME)
  • then executes cmd that executes mvn (by its full path)
    • with bunch of -D arguments (which specify working directory and AppStarter as a class to execute)
    • и exec-maven- plugin с целью exec.
09.04.2017

2

Когда NetBeans компилирует программу, она создает иерархию папок с .class скомпилированными файлами. При создании архива JAR ZIP помещаются в архив. При выполнении программы (или отладке) NetBeans запускает файлы .class вне папок, а не в файле JAR.

Это может вызвать разные проблемы, например разные PATH. Это может вызвать ошибки «файл не найден» с относительными путями.

04.04.2017

3

какая у вас операционная система?

Windows: тогда wmic может быть инструментом, который может показать вам полную командную строку. здесь вы найдете примеры командная строка процесса по имени

linux: попробуйте ps -ef | grep java

09.04.2017
Новые материалы

Сортировка вставками с помощью JavaScript
Простые типы алгоритмов сортировки Пузырьковая сортировка ➝ O(n²) Сортировка вставками ➝ O(n²) Сортировка выбором ➝ O (n²) Сортировка слиянием ➝ O (n * log n) Быстрая сортировка ➝..

Я попросил ChatGPT решить 5 вопросов по программированию LeetCode
ChatGPT , диалоговый ИИ от OpenAI , выпущенный в ноябре 2022 года, может понять и ответить практически на все, что вы спросите. У него есть возможность писать стихи, штамповать эссе и писать..

DevTools, которые изменили мою жизнь
Самые эффективные инструменты разработчика, которые я встречал за свою карьеру Время от времени вы сталкиваетесь с инструментом, который расширяет ваши способности сверхспособностями и..

Веб-приложение для чата с использованием Phoenix и Vue.js - Часть 6
В этой части мы рассмотрим перенос вещей в отдельные компоненты. Вот все части этой серии: Github: https://github.com/jespr/vue-phoenix-chat Heroku:..

Почему веб-сборка меняет правила игры? (Часть 1)
Эта статья написана, чтобы помочь новичкам понять основные концепции: с чего начать? Что для вас есть и какие реальные проблемы вы можете решить? Я уже некоторое время слышу термин..

Мифы о машинном обучении
Машинное обучение прошло через несколько волн своего внедрения. С годами доступность данных увеличилась в геометрической прогрессии. В то же время мощность компьютеров увеличилась в соответствии..

Функциональное тестирование в JavaScript для начинающих
Функциональное тестирование является неотъемлемой частью процесса разработки программного обеспечения и особенно важно при работе с JavaScript. JavaScript — это универсальный и широко используемый..