Create working .jar out of Maven-Project - JavaFX (Afterburner.fx) Project : Currently stuck with...
I´ve created a small JavaFx Project with the use of the afterburner.fx framework.
It works fine when I start it in the IDE (IntelliJ), but after I created a fat .jar out of it via the "maven-assembly-plugin" it fails to open the Second View.
Pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>assemble-all</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.company.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
SetupPresenter.onStart():
public void onStart(){
InProgressView inProgressScreen = new InProgressView();
Scene scene = new Scene(inProgressScreen.getView());
window.setScene(scene);
window.setTitle("Currently Running");
window.show();
SetRating app = new SetRating();
new Thread(app).start();
}
Errormessage:
Caused by: java.lang.IllegalStateException: Cannot load file InProgress.fxml
at com.airhacks.afterburner.views.FXMLView.getResourceCamelOrLowerCase(FXMLView.java:221)
at com.airhacks.afterburner.views.FXMLView.getFXMLName(FXMLView.java:205)
at com.airhacks.afterburner.views.FXMLView.<init>(FXMLView.java:83)
at com.airhacks.afterburner.views.FXMLView.<init>(FXMLView.java:72)
at com.company.gui.inProgress.InProgressView.<init>(InProgressView.java:5)
at com.company.gui.setup.SetupPresenter.onStart(SetupPresenter.java:41)
... 58 more
The same Errormessage you get in the IDE, when you not include the .fxml in the pom.xml as displayed following:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.fxml</include>
<include>**/*.css</include>
<include>**/*.properties</include>
<include>**/*.png</include>
</includes>
</resource>
So probably it has something to do with it.
But as I said, the First View is loaded and it is initiated in completly the same way as the Second View:
@Override
public void start(Stage stage) {
window = stage;
SetupView setupScreen = new SetupView();
Scene scene = new Scene(setupScreen.getView());
window.setScene(scene);
window.setTitle("ScotlandYard");
window.show();
}
I´ve tried to find the solution by myself today and tried to generate the fat .jar in varoius other ways, but wasnt able to get a running .jar.
java javafx maven-2 maven-assembly-plugin
add a comment |
I´ve created a small JavaFx Project with the use of the afterburner.fx framework.
It works fine when I start it in the IDE (IntelliJ), but after I created a fat .jar out of it via the "maven-assembly-plugin" it fails to open the Second View.
Pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>assemble-all</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.company.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
SetupPresenter.onStart():
public void onStart(){
InProgressView inProgressScreen = new InProgressView();
Scene scene = new Scene(inProgressScreen.getView());
window.setScene(scene);
window.setTitle("Currently Running");
window.show();
SetRating app = new SetRating();
new Thread(app).start();
}
Errormessage:
Caused by: java.lang.IllegalStateException: Cannot load file InProgress.fxml
at com.airhacks.afterburner.views.FXMLView.getResourceCamelOrLowerCase(FXMLView.java:221)
at com.airhacks.afterburner.views.FXMLView.getFXMLName(FXMLView.java:205)
at com.airhacks.afterburner.views.FXMLView.<init>(FXMLView.java:83)
at com.airhacks.afterburner.views.FXMLView.<init>(FXMLView.java:72)
at com.company.gui.inProgress.InProgressView.<init>(InProgressView.java:5)
at com.company.gui.setup.SetupPresenter.onStart(SetupPresenter.java:41)
... 58 more
The same Errormessage you get in the IDE, when you not include the .fxml in the pom.xml as displayed following:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.fxml</include>
<include>**/*.css</include>
<include>**/*.properties</include>
<include>**/*.png</include>
</includes>
</resource>
So probably it has something to do with it.
But as I said, the First View is loaded and it is initiated in completly the same way as the Second View:
@Override
public void start(Stage stage) {
window = stage;
SetupView setupScreen = new SetupView();
Scene scene = new Scene(setupScreen.getView());
window.setScene(scene);
window.setTitle("ScotlandYard");
window.show();
}
I´ve tried to find the solution by myself today and tried to generate the fat .jar in varoius other ways, but wasnt able to get a running .jar.
java javafx maven-2 maven-assembly-plugin
Look in your generated .jar if all the necessary files are included (InProgress.fxml, InProgressPresenter.java, InProgressView.java). If not, try adding the " <directory>src/main/resources</directory>" as resource in your pom.
– briadeus
Nov 30 '18 at 12:39
add a comment |
I´ve created a small JavaFx Project with the use of the afterburner.fx framework.
It works fine when I start it in the IDE (IntelliJ), but after I created a fat .jar out of it via the "maven-assembly-plugin" it fails to open the Second View.
Pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>assemble-all</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.company.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
SetupPresenter.onStart():
public void onStart(){
InProgressView inProgressScreen = new InProgressView();
Scene scene = new Scene(inProgressScreen.getView());
window.setScene(scene);
window.setTitle("Currently Running");
window.show();
SetRating app = new SetRating();
new Thread(app).start();
}
Errormessage:
Caused by: java.lang.IllegalStateException: Cannot load file InProgress.fxml
at com.airhacks.afterburner.views.FXMLView.getResourceCamelOrLowerCase(FXMLView.java:221)
at com.airhacks.afterburner.views.FXMLView.getFXMLName(FXMLView.java:205)
at com.airhacks.afterburner.views.FXMLView.<init>(FXMLView.java:83)
at com.airhacks.afterburner.views.FXMLView.<init>(FXMLView.java:72)
at com.company.gui.inProgress.InProgressView.<init>(InProgressView.java:5)
at com.company.gui.setup.SetupPresenter.onStart(SetupPresenter.java:41)
... 58 more
The same Errormessage you get in the IDE, when you not include the .fxml in the pom.xml as displayed following:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.fxml</include>
<include>**/*.css</include>
<include>**/*.properties</include>
<include>**/*.png</include>
</includes>
</resource>
So probably it has something to do with it.
But as I said, the First View is loaded and it is initiated in completly the same way as the Second View:
@Override
public void start(Stage stage) {
window = stage;
SetupView setupScreen = new SetupView();
Scene scene = new Scene(setupScreen.getView());
window.setScene(scene);
window.setTitle("ScotlandYard");
window.show();
}
I´ve tried to find the solution by myself today and tried to generate the fat .jar in varoius other ways, but wasnt able to get a running .jar.
java javafx maven-2 maven-assembly-plugin
I´ve created a small JavaFx Project with the use of the afterburner.fx framework.
It works fine when I start it in the IDE (IntelliJ), but after I created a fat .jar out of it via the "maven-assembly-plugin" it fails to open the Second View.
Pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>assemble-all</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.company.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
SetupPresenter.onStart():
public void onStart(){
InProgressView inProgressScreen = new InProgressView();
Scene scene = new Scene(inProgressScreen.getView());
window.setScene(scene);
window.setTitle("Currently Running");
window.show();
SetRating app = new SetRating();
new Thread(app).start();
}
Errormessage:
Caused by: java.lang.IllegalStateException: Cannot load file InProgress.fxml
at com.airhacks.afterburner.views.FXMLView.getResourceCamelOrLowerCase(FXMLView.java:221)
at com.airhacks.afterburner.views.FXMLView.getFXMLName(FXMLView.java:205)
at com.airhacks.afterburner.views.FXMLView.<init>(FXMLView.java:83)
at com.airhacks.afterburner.views.FXMLView.<init>(FXMLView.java:72)
at com.company.gui.inProgress.InProgressView.<init>(InProgressView.java:5)
at com.company.gui.setup.SetupPresenter.onStart(SetupPresenter.java:41)
... 58 more
The same Errormessage you get in the IDE, when you not include the .fxml in the pom.xml as displayed following:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.fxml</include>
<include>**/*.css</include>
<include>**/*.properties</include>
<include>**/*.png</include>
</includes>
</resource>
So probably it has something to do with it.
But as I said, the First View is loaded and it is initiated in completly the same way as the Second View:
@Override
public void start(Stage stage) {
window = stage;
SetupView setupScreen = new SetupView();
Scene scene = new Scene(setupScreen.getView());
window.setScene(scene);
window.setTitle("ScotlandYard");
window.show();
}
I´ve tried to find the solution by myself today and tried to generate the fat .jar in varoius other ways, but wasnt able to get a running .jar.
java javafx maven-2 maven-assembly-plugin
java javafx maven-2 maven-assembly-plugin
edited Nov 28 '18 at 14:42
th0m4zz
asked Nov 25 '18 at 19:39
th0m4zzth0m4zz
64
64
Look in your generated .jar if all the necessary files are included (InProgress.fxml, InProgressPresenter.java, InProgressView.java). If not, try adding the " <directory>src/main/resources</directory>" as resource in your pom.
– briadeus
Nov 30 '18 at 12:39
add a comment |
Look in your generated .jar if all the necessary files are included (InProgress.fxml, InProgressPresenter.java, InProgressView.java). If not, try adding the " <directory>src/main/resources</directory>" as resource in your pom.
– briadeus
Nov 30 '18 at 12:39
Look in your generated .jar if all the necessary files are included (InProgress.fxml, InProgressPresenter.java, InProgressView.java). If not, try adding the " <directory>src/main/resources</directory>" as resource in your pom.
– briadeus
Nov 30 '18 at 12:39
Look in your generated .jar if all the necessary files are included (InProgress.fxml, InProgressPresenter.java, InProgressView.java). If not, try adding the " <directory>src/main/resources</directory>" as resource in your pom.
– briadeus
Nov 30 '18 at 12:39
add a comment |
1 Answer
1
active
oldest
votes
I found the Answer
Solution for me was just to rename the .fxml Files to start Uppercase:
As an example I renamed view1.fxml to View1.fxml.
I guess it has something to do with the way windows is accesing the files inside an jar/zip.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53471158%2fcreate-working-jar-out-of-maven-project-javafx-afterburner-fx-project-cur%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
I found the Answer
Solution for me was just to rename the .fxml Files to start Uppercase:
As an example I renamed view1.fxml to View1.fxml.
I guess it has something to do with the way windows is accesing the files inside an jar/zip.
add a comment |
I found the Answer
Solution for me was just to rename the .fxml Files to start Uppercase:
As an example I renamed view1.fxml to View1.fxml.
I guess it has something to do with the way windows is accesing the files inside an jar/zip.
add a comment |
I found the Answer
Solution for me was just to rename the .fxml Files to start Uppercase:
As an example I renamed view1.fxml to View1.fxml.
I guess it has something to do with the way windows is accesing the files inside an jar/zip.
I found the Answer
Solution for me was just to rename the .fxml Files to start Uppercase:
As an example I renamed view1.fxml to View1.fxml.
I guess it has something to do with the way windows is accesing the files inside an jar/zip.
answered Dec 20 '18 at 17:57
th0m4zzth0m4zz
64
64
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53471158%2fcreate-working-jar-out-of-maven-project-javafx-afterburner-fx-project-cur%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Look in your generated .jar if all the necessary files are included (InProgress.fxml, InProgressPresenter.java, InProgressView.java). If not, try adding the " <directory>src/main/resources</directory>" as resource in your pom.
– briadeus
Nov 30 '18 at 12:39