JAVAFx Build Failed

4

Я создал приложение с JavaFx для окон, что действительно здорово. Я могу запустить его из e (fx) clipse, все работает отлично, но я не могу создать файл jar из проекта. Я могу экспортировать его (щелкните правой кнопкой мыши- > Export- > Runnable Jar File). Однако, если я запускаю банку на MAC OS X, в строке меню я получаю "java" menuitem вместо имени моего приложения, которое мне действительно не нравится. Я искал, как скрыть этот элемент меню или просто переименовать его, и я обнаружил, что мне нужно переименовать "Название приложения" в файле build.fxbuild. Теперь я не могу его построить.

Так вот что я действительно хочу: удалить/скрыть/переименовать элемент меню "java" в Mac OS X. Если у вас есть опыт, поделитесь им со мной. Я буду очень благодарен:).

Я получаю следующую ошибку при попытке запустить файл build.xml:

[javac] Compiling 22 source files to C:\Users\Hassan\Desktop\Programming\workspace\Raktar_vevo 2.7\build\classes
[javac] warning: [options] bootstrap class path not set in conjunction with -source 1.7
[javac] Note: C:\Users\Hassan\Desktop\Programming\workspace\Raktar_vevo 2.7\build\src\application\SajátKészlet.java uses unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
[javac] 1 warning
 [copy] Copying 12 files to C:\Users\Hassan\Desktop\Programming\workspace\Raktar_vevo 2.7\build\classesinit

    -fx-tasks:
  [taskdef] Could not load definitions from resource com/sun/javafx/tools/ant/antlib.xml. It could not be found.
do-deploy:
     [copy] Copying 20 files to C:\Users\Hassan\Desktop\Programming\workspace\Raktar_vevo 2.7\dist\libs

BUILD FAILED
C:\Users\Hassan\Desktop\Programming\workspace\Raktar_vevo 2.7\build.xml:217: Problem: failed to create task or type javafx:com.sun.javafx.tools.ant:resources
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have taken place.
No types or tasks have been defined in this namespace yet


Total time: 22 seconds 

** Я использую: -Windows 7 64bit -jdk 8 u5 -JAVA_HOME установлен -e (fx) clipse (Kepler), я загрузил версию All-in-one (для ленивой ссылка)

Спасибо вам большое за вашу помощь!

Теги:
macos
javafx-8
build

4 ответа

13

Вам нужно настроить jdk как jre в Prefereces- > Java- > Installed JRE и проверить его как "отдельный jre" в разделе "Внешние инструменты" Configuration- > JRE в случае Eclipse

Изменить: Запуск > Внешние инструменты > Конфигурация внешнего инструмента

Изображение 472899

Изображение 472902

Изображение 472907

4

Когда вы новый проект JavaFX, сгенерированный файл build.xml, возможно, имеет неправильный путь к файлу.

<?xml version="1.0" encoding="UTF-8"?>
	<project name="App2" default="do-deploy" basedir="."  xmlns:fx="javafx:com.sun.javafx.tools.ant">
	<target name="init-fx-tasks">
		<path id="fxant">
			<filelist>
				<file name="${java.home}\..\lib\ant-javafx.jar"/> <!-- wrong path -->
				<file name="${java.home}\lib\jfxrt.jar"/> <!-- wrong path -->
			</filelist>
		</path>
	
		<taskdef resource="com/sun/javafx/tools/ant/antlib.xml"      
			uri="javafx:com.sun.javafx.tools.ant"
			classpathref="fxant"/>
	</target>

вам нужно проверить, где находятся ant -javafx.jar и jfxrt.jar? Например, JDK 1.8 оба файла находятся в разности, C:\Program Files\Java\jdk1.8.0_20\lib\ant -javafx.jar C:\Program Files\Java\jre1.8.0_20\lib\ext\jfxrt.jar

так что теперь я только нахожу способ самостоятельно изменить...

<?xml version="1.0" encoding="UTF-8"?>
	<project name="App" default="do-deploy" basedir="."  xmlns:fx="javafx:com.sun.javafx.tools.ant">
	<target name="init-fx-tasks">
		<path id="fxant">
			<filelist>
				<file name="C:\Program Files\Java\jdk1.8.0_20\lib\ant-javafx.jar"/>
				<file name="C:\Program Files\Java\jre1.8.0_20\lib\ext\jfxrt.jar"/>
			</filelist>
		</path>
	
		<taskdef resource="com/sun/javafx/tools/ant/antlib.xml"      
			uri="javafx:com.sun.javafx.tools.ant"
			classpathref="fxant"/>
	</target>

после изменения файлов, щелкните правой кнопкой мыши, выберите "Выполнить" как Ant Сборка!

2

У меня есть немного лучшее решение с меньшими изменениями:

Эта проблема с исправлением ошибки (просто добавьте ext\для исправления проблемы)

<path id="fxant">
    <filelist>
        <file name="${java.home}\..\lib\ant-javafx.jar"/>
        <file name="${java.home}\lib\ext\jfxrt.jar"/>
    </filelist>
</path>

Прежде чем это сделать, вам нужно иметь jdk1.8.xxx в вашем установленном списке JREs, а не jre, включенном в пакет jdk, а сам jdk.
Затем в меню "Запуск\Внешние инструменты" > "Внешние инструменты" откройте вкладку "JRE" и убедитесь, что среда выполнения - это CDC-1.1/Foundation-1.1 (jdk1.8.xxx)
Это все!

  • 0
    Привет, как это сделать, я имею в виду, как я могу иметь JDK в списке JREs? Я изменил свой файл eclipse.ini, но ничего не произошло ... :(
0

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

В моем случае, когда я получал ту же проблему, мне удалось заставить ее работать, выбрав Run- > External Tools_ > External Tools Configurations и выбрав вкладку JRE. Мне пришлось изменить среду Execution от 1.7 до CDC-1.0/Foundation-1.0 (jdk1.7.0_25) (и работает CDC-1.1).

Определенно newb, когда дело доходит до ant, поэтому не уверен, почему ленивая установка не правильно подбирает путь, но, надеюсь, это пригодится кому-то еще, стучащим головой, прежде чем подойдет для excedrin.

  • 0
    Вы, кажется, описываете то же решение, что и Руслан Нерука.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню