IntelliJ Maven и JavaFX - PullRequest
       36

IntelliJ Maven и JavaFX

0 голосов
/ 17 мая 2018

Я новичок в IntelliJ и Maven и столкнулся с проблемой, как это обычно кажется к настоящему времени.Я сделал Maven проект в IntelliJ, который хорошо работает внутри IntelliJ.Когда я делаю чистую установку, однако, jar, который заканчивается в целевой папке, не запускается.Я получаю следующую ошибку: «Ошибка: не удалось найти или загрузить основной класс test2.jar» при попытке запустить его из терминала.Я ожидаю, что это как-то связано с файлом MANIFEST (который я не могу найти в структуре моего проекта), но я действительно не знаю.Это общая проблема или я был особенно небрежен?Кто-нибудь знает способ исправить это?

Я не верю, что мой исходный код будет особенно полезен для вас, но я могу ошибаться.Так что, если вы хотите, я могу опубликовать его в редактировании.

Спасибо за любую помощь!

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

Вы можете создать исполняемый файл jar, который содержит все его зависимости. Он устанавливает класс, который содержит метод main() в манифесте и позволяет запускать ваше приложение:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.example.mainClass</mainClass>
                    </manifest>
                </archive>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
            </configuration>
            <executions>
                <execution>
                    <id>make-assembly</id>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

Жирный jar со всеми его зависимостями (кроме jre ofcourse) будет встроен в вашу целевую папку. Вы можете запустить его с:

java -jar your-application-1.0-jar-with-dependencies.jar

Чтобы изменить вывод имени фляги или любых других настроек, ознакомьтесь с документацией сборки плагина .

0 голосов
/ 17 мая 2018

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

  1. Перейти в Файл -> Структура проекта
  2. Нажмите на вкладку Артефакты
  3. Нажмите кнопку + и выберите приложение JavaFX [из модуля 'YourModule'] [enter image description here] 1

  4. Если вы используете какие-либо внешние библиотеки, вам нужно включить в артефакт, как это

    • Щелкните правой кнопкой мыши (YourApp.jar) -> добавить копию -> библиотечные файлы enter image description here
    • Выберите файлы библиотеки, которые необходимы для проекта, и нажмите ОК enter image description here
  5. Нажмите на вкладку Java FX с правой стороны, затем нажмите кнопку с 3 точками, чтобы выбрать класс Application [класс, расширяющий Application] [enter image description here] 4

  6. Нажмите "ОК" и перейдите в "Построить -> Построить артефакты и построить проект".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...