Eclipse, JavaFX: код работает в IDE, но не в исполняемом jar - PullRequest
1 голос
/ 26 мая 2019

В настоящее время я пытаюсь перенести свой проект на javafx11.Для тестирования я пытаюсь создать исполняемый файл jar с примером hello-world со страницы учебника .Я включил vm-модули, чтобы предотвратить ошибку Error: JavaFX runtime components are missing, and are required to run this application.

В eclipse все работает нормально, но когда я экспортирую проект в виде исполняемого файла JAR, ошибка возвращается, когда я пытаюсь запустить JAR.

Когда я экспортирую jar-файл, я выбираю ту же конфигурацию запуска, что и приложение, и я решил извлечь необходимые библиотеки в сгенерированный jar.

РЕДАКТИРОВАТЬ: как было рекомендовано, я 'В настоящее время я пытаюсь создать работающую банку с Maven.Bhild успешно, но я не могу его выполнить.

pom.xml выглядит следующим образом

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>Mpp_App</groupId>
  <artifactId>Mpp_App</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
  <name>Dacemo</name>
  <build>
    <sourceDirectory>src</sourceDirectory>
    <resources>

      <resource>
        <directory>src</directory>
        <excludes>
          <exclude>**/*.java</exclude>
        </excludes>
      </resource>
    </resources>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.0</version>
        <configuration>
          <release>11</release>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-maven-plugin</artifactId>
        <version>0.0.2</version>
        <configuration>
            <mainClass>Start</mainClass>
        </configuration>
        </plugin>
        <plugin>
        <!-- Build an executable JAR -->
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.4</version>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>Start</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>
    </plugins>

  </build>

  <dependencies>
    <dependency>
        <groupId>com.jfoenix</groupId>
        <artifactId>jfoenix</artifactId>
        <version>9.0.8</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.itextpdf/itextpdf -->
    <dependency>
        <groupId>com.itextpdf</groupId>
        <artifactId>itextpdf</artifactId>
        <version>5.5.13</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.googlecode.json-simple/json-simple -->
    <dependency>
        <groupId>com.googlecode.json-simple</groupId>
        <artifactId>json-simple</artifactId>
        <version>1.1.1</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.apache.pdfbox/pdfbox -->
    <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox</artifactId>
        <version>2.0.15</version>
    </dependency>

  </dependencies>
</project>

При попытке выполнить его я получаю ошибку

Could not find or laod main class Start
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

Неправильно ли определен файл Start.java?В структуре проекта eclipse файл Start.java находится в пакете по умолчанию.

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