Сбой сборки продукта приложения Eclipse JavaFX e4

Я разрабатываю приложение JavaFX e4. До сих пор я следовал руководствам, а также запустил пример приложения. Я создал новый проект и включил свой код/представления и т. д., и приложение отлично работает при запуске из eclipse. Теперь я хочу экспортировать это приложение через maven, вот где я застрял.

Мне также нужны некоторые внешние библиотеки, которые доступны в виде проектов eclipse java. Некоторые из этих проектов включают в себя код Java (например, самописную библиотеку общего пользования), а другие просто включают в себя несколько файлов jar. Eclipse позволяет мне включать эти проекты через feature.xml (просто нажав «добавить»). Пока все работает нормально, когда я запускаю приложение через файл «продукт», и eclipse удается разрешить все зависимости и запустить мое приложение JavaFX e4 без каких-либо ошибок.

Когда я пытаюсь собрать приложение через maven из терминала, я получаю следующую ошибку:

[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: mygui.app 1.0.0
[ERROR]   Missing requirement: mygui.app 1.0.0 requires 'bundle my.commom.vecmath 0.0.0' but it could not be found
[ERROR] 
[ERROR] Internal error: java.lang.RuntimeException: "No solution found because the problem is unsatisfiable.": ["Unable to satisfy dependency from mygui.app 1.0.0 to bundle my.commom.vecmath 0.0.0.", "No solution found because the problem is unsatisfiable."] -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: java.lang.RuntimeException: "No solution found because the problem is unsatisfiable.": ["Unable to satisfy dependency from mygui.app 1.0.0 to bundle my.commom.vecmath 0.0.0.", "No solution found because the problem is unsatisfiable."]
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:168)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: java.lang.RuntimeException: "No solution found because the problem is unsatisfiable.": ["Unable to satisfy dependency from mygui.app 1.0.0 to bundle my.commom.vecmath 0.0.0.", "No solution found because the problem is unsatisfiable."]
    at org.eclipse.tycho.p2.resolver.AbstractResolutionStrategy.newResolutionException(AbstractResolutionStrategy.java:98)
    at org.eclipse.tycho.p2.resolver.ProjectorResolutionStrategy.resolve(ProjectorResolutionStrategy.java:88)
    at org.eclipse.tycho.p2.resolver.AbstractResolutionStrategy.resolve(AbstractResolutionStrategy.java:63)
    at org.eclipse.tycho.p2.impl.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:126)
    at org.eclipse.tycho.p2.impl.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:81)
    at org.eclipse.tycho.p2.resolver.P2TargetPlatformResolver.doResolvePlatform(P2TargetPlatformResolver.java:374)
    at org.eclipse.tycho.p2.resolver.P2TargetPlatformResolver.resolveDependencies(P2TargetPlatformResolver.java:350)
    at org.eclipse.tycho.core.resolver.DefaultTychoDependencyResolver.resolveProject(DefaultTychoDependencyResolver.java:109)
    at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:82)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:274)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
    ... 11 more
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/InternalErrorException

Отсутствующая зависимость - это проект Java eclipse, который включает в себя несколько jar-файлов и некоторые файлы Java src. Как я уже сказал, eclipse удается разрешить зависимость и показывает мой графический интерфейс, maven не может разрешить зависимость. Я понятия не имею, в чем проблема. Сначала я подумал об изменении проекта commons на проект maven с правильно настроенным pom.xml, но безуспешно.


person Westranger    schedule 15.09.2014    source источник


Ответы (2)


Репозиторий p2, на который указывает ваша сборка maven-tycho (по умолчанию он, скорее всего, указывает только на efxclipse), должен содержать необходимые артефакты. Посмотрите на pom.xml в проекте releng!

Мы также предоставляем поддержку для e(fx)clipse через наш форум https://www.eclipse.org/forums/index.php/f/259/

person tomsontom    schedule 17.09.2014

Спустя столько лет я нашел решение проблемы. Это был искаженный манифест, созданный maven (из-за значений по умолчанию). Решение см. здесь /а>

person Westranger    schedule 06.06.2016