У меня есть настольное приложение JavaFX, использующее JDK 20. Когда я создаю исполняемый файл JAR, этот файл JAR не работает. После поиска решения я получил решение отсюда, создал класс Launcher и выбрал этот класс в качестве основного класса для создания файла JAR. После этого файл JAR работает, но предварительная загрузка не отображается, хотя время предварительной загрузки уже истекло. Как я могу решить эту проблему? Я пробовал много разных кодов, но файл JAR по-прежнему работает неправильно. Ниже приведены мои App.java (основной класс) и Launcher.java. Пожалуйста, изучите это и помогите мне решить эту проблему.
App.java
public class App extends Application {
public static Stage primaryStage;
static DBMySql db = new DBMySql();
private static final int COUNT_LIMIT = 10;
private static void setupScheduler() throws SchedulerException {
///// code for scheduler to check financial year when we open the app.//////////////
}
@Override
public void init() throws Exception {
for(int i=0;i< COUNT_LIMIT;i++){
double progress = (100*i)/ COUNT_LIMIT;
notifyPreloader(new Preloader.ProgressNotification(progress));
Thread.sleep(500);
}
}
@Override
public void start(Stage pStage) throws Exception {
primaryStage = pStage;
try {
showLogin();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
public static void showLogin() throws IOException {
//////code for showing login page.///////////////////
}
public static class FinancialYearJob implements Job {
@Override
public void execute(JobExecutionContext context) {
// code for execute the financial year.
}
private String calculateFinancialYear(java.time.LocalDate date) {
int year = date.getYear() ; // Increment since it's the end of the financial year
return year + "-" + (year % 100 + 1);
}
private boolean isFinancialYearStored(String financialYear) {
////////////////code for check the data is already stored.//////////////
return false;
}
private void storeFinancialYear(String financialYear,java.time.LocalDate startDate,java.time.LocalDate endDate) {
//////// code for insert financial year data into DB//////
}
}
public static void main(String[] args) {
try {
setupScheduler(); // Initialize and start the scheduler
} catch (SchedulerException e) {
throw new RuntimeException(e);
}
// Application.launch(App.class, args);
System.setProperty("javafx.preloader", MyPreLoader.class.getCanonicalName());
launch(args);
}
}
Launcher.java
public class Launcher {
public static void main(String[]args){
Application.launch(App.class,args);
// System.setProperty("javafx.preloader", MyPreLoader.class.getCanonicalName());
// launch(args);
}
}
Подробнее здесь: https://stackoverflow.com/questions/786 ... ellij-idea
Создайте исполняемый файл jar с помощью Preloader в Javafx, используя intellij IDEA. ⇐ JAVA
Программисты JAVA общаются здесь
1719306545
Anonymous
У меня есть настольное приложение JavaFX, использующее JDK 20. Когда я создаю исполняемый файл JAR, этот файл JAR не работает. После поиска решения я получил решение отсюда, создал класс Launcher и выбрал этот класс в качестве основного класса для создания файла JAR. После этого файл JAR работает, но предварительная загрузка не отображается, хотя время предварительной загрузки уже истекло. Как я могу решить эту проблему? Я пробовал много разных кодов, но файл JAR по-прежнему работает неправильно. Ниже приведены мои [b]App.java[/b] (основной класс) и [b]Launcher.java[/b]. Пожалуйста, изучите это и помогите мне решить эту проблему.
[b]App.java[/b]
public class App extends Application {
public static Stage primaryStage;
static DBMySql db = new DBMySql();
private static final int COUNT_LIMIT = 10;
private static void setupScheduler() throws SchedulerException {
///// code for scheduler to check financial year when we open the app.//////////////
}
@Override
public void init() throws Exception {
for(int i=0;i< COUNT_LIMIT;i++){
double progress = (100*i)/ COUNT_LIMIT;
notifyPreloader(new Preloader.ProgressNotification(progress));
Thread.sleep(500);
}
}
@Override
public void start(Stage pStage) throws Exception {
primaryStage = pStage;
try {
showLogin();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
public static void showLogin() throws IOException {
//////code for showing login page.///////////////////
}
public static class FinancialYearJob implements Job {
@Override
public void execute(JobExecutionContext context) {
// code for execute the financial year.
}
private String calculateFinancialYear(java.time.LocalDate date) {
int year = date.getYear() ; // Increment since it's the end of the financial year
return year + "-" + (year % 100 + 1);
}
private boolean isFinancialYearStored(String financialYear) {
////////////////code for check the data is already stored.//////////////
return false;
}
private void storeFinancialYear(String financialYear,java.time.LocalDate startDate,java.time.LocalDate endDate) {
//////// code for insert financial year data into DB//////
}
}
public static void main(String[] args) {
try {
setupScheduler(); // Initialize and start the scheduler
} catch (SchedulerException e) {
throw new RuntimeException(e);
}
// Application.launch(App.class, args);
System.setProperty("javafx.preloader", MyPreLoader.class.getCanonicalName());
launch(args);
}
}
[b]Launcher.java[/b]
public class Launcher {
public static void main(String[]args){
Application.launch(App.class,args);
// System.setProperty("javafx.preloader", MyPreLoader.class.getCanonicalName());
// launch(args);
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/78666394/create-a-executable-jar-file-with-preloader-in-javafx-using-intellij-idea[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия