java .lang.IllegalArgumentException: plexus.container.default: Неверное имя модуля: 'default' не является идентификатором Java - PullRequest
0 голосов
/ 11 января 2020

У меня есть эта проблема, когда я пытаюсь запустить мою банку со скриптом bash:

Полная проблема:

Error occurred during initialization of boot layer
java.lang.module.FindException: Unable to derive module descriptor for C:\Users\aposk\Desktop\Twitter_App_Win_Version\app\ressources\lib\plexus-container-default-1.0-alpha-9-stable-1.jar

Caused by: java.lang.IllegalArgumentException: plexus.container.default: Invalid module name: 'default' is not a Java identifier

script bash

@echo off

::apt-get install openjfx
SET JAVA_HOME=C:\Users\aposk\Desktop\Twitter_App_Win_Version\jdk-13.0.1
SET PATH=%JAVA_HOME%\bin;%PATH%
java -version

java -jar --module-path "C:\Users\aposk\Desktop\Twitter_App_Win_Version\app\ressources\lib" --add-modules=javafx.controls,javafx.fxml "C:\Users\aposk\Desktop\Twitter_App_Win_Version\app\ressources\pip-0.0.1-SNAPSHOT.jar"

pause

Мы работаем над JDK 13, но работаем и над JDK -> причина запроса Http при импорте java. net.

Я на Win-64bits и работает над затмением с Maven. Другие решения в сети не решили мою проблему

1 Ответ

0 голосов
/ 15 января 2020

Вернуться с решением!

Если вам нужно запустить .jar с JFX более новой версией, чем JAVA 8, вам нужно настроить систему с помощью jdk, но также вам нужно создать новый основной класс без расширения на APplication. , В этом классе вы будете запускать ваше mainApp с помощью метода publi c void, и вам нужно добавить в него несколько аргументов. xml (feg)

<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-shade-plugin</artifactId>
				<version>2.4.1</version>
				<executions>
					<execution>
						<phase>package</phase>
						<goals>
							<goal>shade</goal>
						</goals>
						<configuration>
							<shadedArtifactAttached>true</shadedArtifactAttached>
							<shadedClassifierName>project/classifier</shadedClassifierName>
							<outputFile>shade\${project.artifactId}.jar</outputFile>
							<transformers>
								<transformer
									implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
									<mainClass>fr.tse.fise2.pip.graphic.Main</mainClass>
								</transformer>
							</transformers>
						</configuration>
					</execution>
				</executions>

Вам также необходимо настроить какой-либо модуль для java fx в вашем пом. xml

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

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

		<dependency>
			<groupId>org.openjfx</groupId>
			<artifactId>javafx-graphics </artifactId>
			<version>13</version>
			<classifier>mac</classifier>
		</dependency>

		<dependency>
			<groupId>org.openjfx</groupId>
			<artifactId>javafx-graphics </artifactId>
			<version>13</version>
			<classifier>linux</classifier>
		</dependency>

		<dependency>
			<groupId>org.openjfx</groupId>
			<artifactId>javafx-graphics </artifactId>
			<version>13</version>
			<classifier>win</classifier>
		</dependency>

		<dependency>
			<groupId>org.openjfx</groupId>
			<artifactId>javafx-fxml</artifactId>
			<version>13</version>
		</dependency>

		<dependency>
			<groupId>org.openjfx</groupId>
			<artifactId>javafx-web</artifactId>
			<version>13</version>
		</dependency>
    
    	<dependency>
			<groupId>org.openjfx</groupId>
			<artifactId>javafx-controls</artifactId>
			<version>13</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.openjfx/javafx-fxml -->
		<dependency>
			<groupId>org.openjfx</groupId>
			<artifactId>javafx-fxml</artifactId>
			<version>13</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/com.jfoenix/jfoenix -->
		<dependency>

Теперь вы можете запустить свой jar с cmd java -jar filename.jar в правильном месте вашего jar

Мои проекты работают с JavaFx и JAVA 11

Помог Камиль

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...