• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • paul wheaton
  • Ron McLeod
  • Jeanne Boyarsky
Sheriffs:
  • Paul Clapham
Saloon Keepers:
  • Tim Holloway
  • Roland Mueller
Bartenders:

Maven_And_JavaFX

 
Greenhorn
Posts: 14
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello everybody,

I use maven-JavaFx-simple archetype. And i want an executeable standalone jar. I tried the maven-assembly plugin. But when i execute: "java -jar prgmName-version-jar-with-dependencies.jar" (Paraphrasing). I get: "JavaFX Components are missing" (Paraphrasing again). The program runs just fine when i use: "mvn clean javafx:run" in eclipse and in Terminal.

Here is my 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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>jborg</groupId>
   <artifactId>newPacking</artifactId>
<version>0.0.1-SNAPSHOT</version>
 
  <properties>
       <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
       <maven.compiler.source>17</maven.compiler.source>
       <maven.compiler.target>${maven.compiler.source}</maven.compiler.target>
       <junit.jupiter.version>5.9.1</junit.jupiter.version>
       <junit.platform.version>1.9.2</junit.platform.version>
   </properties>

   <dependencies>

<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.4.2</version>
<type>maven-plugin</type>
</dependency>

       <dependency>
           <groupId>org.junit.jupiter</groupId>
           <artifactId>junit-jupiter-engine</artifactId>
           <version>${junit.jupiter.version}</version>
           <scope>test</scope>
       </dependency>

<dependency>
    <groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>20</version>
</dependency>

<dependency>
   <groupId>org.openjfx</groupId>
    <artifactId>javafx-graphics</artifactId>
    <version>20</version>
  </dependency>

<dependency>
   <groupId>org.openjfx</groupId>
   <artifactId>javafx-base</artifactId>
   <version>20</version>
  </dependency>

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20180130</version>
</dependency>

<dependency>
<groupId>jborg</groupId>
  <artifactId>myToolBoxMavenOld</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>

   </dependencies>
   <build>
       <plugins>
           <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <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.6</version>
               <executions>
                   <execution>
                       <!-- Default configuration for running -->
                       <!-- Usage: mvn clean javafx:run -->
                       <id>default-cli</id>
                       <configuration>
                           <mainClass>jborg.newPacking.GTDAppHead</mainClass>
                       </configuration>
                   </execution>
               </executions>
           </plugin>
           
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>jborg.newPacking.GTDAppHead</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
   
       </plugins>
       
<resources>

    <resource>
      <directory>${project.basedir}/gtdResources</directory>
    </resource>

    <resource>
      <directory>${project.basedir}/projectDATA</directory>
    </resource>

  </resources>

   </build>
</project>
 
Bartender
Posts: 15743
368
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Creating Fat JARs for JavaFX applications is a huge pain. I strongly recommend that you consider an alternative.

Would a modular runtime image be acceptable? You can use jpackage to create an installer for such a runtime image.
 
John Bernard
Greenhorn
Posts: 14
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi mister van Hulst,

thank you for your tip. I would do anything as long as it is standalone.
If your idear is that fine and Thanks. Do you have more idears. I Prefere : "Simple".
 
Stephan van Hulst
Bartender
Posts: 15743
368
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
What is your definition of "standalone"?
 
John Bernard
Greenhorn
Posts: 14
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I mean it does not need anything beyond a JRE.
 
Stephan van Hulst
Bartender
Posts: 15743
368
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I'm sorry, this topic completely slipped my mind. Do you still need help with this?
 
reply
    Bookmark Topic Watch Topic
  • New Topic