ModiTect не находит зависимости модуля
Я пытаюсь использовать moditect для сборки с помощью vlcj , который не создан с помощью jlink .
После команды maven clean , затем maven install я получаю следующую ошибку:
Module uk.co.caprica.vlcj.osx.stubs not found, required by uk.co.caprica.vlcj
После этого я нашел uk.co.caprica.vlcj.osx.stubs , добавил его в зависимости и в дополнительные зависимости к модулю vlcj , но к сожалению это не помогло и что делать дальше я не знаю.
Я пытался исправить эту ошибку, но потом возникает другая:
Модули vlcj.osx.stubs и uk.co.caprica.vlcj.osx.stubs экспортируют пакет com.apple.eawt в модуль vlcj.natives.
Пожалуйста, помогите мне решить эту ошибку.
пом.xml
...
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<junit.version>5.8.2</junit.version>
<javafx.version>18.0.1</javafx.version>
</properties>
<dependencies>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>${javafx.version}</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-web</artifactId>
<version>${javafx.version}</version>
</dependency>
<dependency>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj</artifactId>
<version>4.7.1</version>
</dependency>
<dependency>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj-javafx</artifactId>
<version>1.1.0</version>
</dependency>
<dependency>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj-osx-stubs</artifactId>
<version>2.0.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.moditect</groupId>
<artifactId>moditect-maven-plugin</artifactId>
<version>1.0.0.RC2</version>
<executions>
<execution>
<id>add-module-infos</id>
<phase>package</phase>
<goals>
<goal>add-module-info</goal>
</goals>
<configuration>
<modules>
<module>
<artifact>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj</artifactId>
<version>4.7.1</version>
</artifact>
<additionalDependencies>
<dependency>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj-osx-stubs</artifactId>
<version>2.0.0</version>
</dependency>
</additionalDependencies>
<moduleInfo>
<name>uk.co.caprica.vlcj</name>
<exports>
*;
</exports>
</moduleInfo>
</module>
<module>
<artifact>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj-javafx</artifactId>
<version>1.1.0</version>
</artifact>
<moduleInfo>
<name>uk.co.caprica.vlcj.javafx</name>
<exports>
*;
</exports>
</moduleInfo>
</module>
</modules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<forceJavacCompilerUse>true</forceJavacCompilerUse>
<annotationProcessorPaths>
<path>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj</artifactId>
<version>4.7.1</version>
</path>
<path>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj-javafx</artifactId>
<version>1.1.0</version>
</path>
<path>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj-osx-stubs</artifactId>
<version>2.0.0</version>
</path>
</annotationProcessorPaths>
<source>18</source>
<target>18</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
</manifest>
<manifestEntries>
<mode>development</mode>
<url>${project.url}</url>
<key>value</key>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.openjfx</groupId>
<artifactId>javafx-maven-plugin</artifactId>
<version>0.0.8</version>
<executions>
<execution>
<id>default-cli</id>
<configuration>
<mainClass>com.example/Main</mainClass>
<launcher>launcher</launcher>
<jlinkZipName>jlinkZipName</jlinkZipName>
<jlinkImageName>jlinkImageName</jlinkImageName>
<noManPages>true</noManPages>
<stripDebug>true</stripDebug>
<noHeaderFiles>true</noHeaderFiles>
<compress>2</compress>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
модуль-info.java
module com.example {
requires javafx.controls;
requires javafx.web;
requires jdk.jsobject;
requires uk.co.caprica.vlcj;
requires uk.co.caprica.vlcj.javafx;
exports com.example;
}
команда jdeps
jdeps --generate-module-info E:\Programming\IntelliJ\workspace\project\target\moditect --add-modules vlcj.natives,com.sun.jna,com.sun.jna.platform,vlcj.osx.stubs,uk.co.caprica.vlcj.osx.stubs --module-path C:\Users\User\.m2\repository\uk\co\caprica\vlcj-natives\4.1.0\vlcj-natives-4.1.0.jar;C:\Users\User\.m2\repository\net\java\dev\jna\jna\5.2.0\jna-5.2.0.jar;C:\Users\User\.m2\repository\net\java\dev\jna\jna-platform\5.2.0\jna-platform-5.2.0.jar;C:\Users\User\.m2\repository\uk\co\caprica\vlcj-osx-stubs\1.0.0\vlcj-osx-stubs-1.0.0.jar;C:\Users\User\.m2\repository\uk\co\caprica\vlcj-osx-stubs\2.0.0\vlcj-osx-stubs-2.0.0.jar C:\Users\User\.m2\repository\uk\co\caprica\vlcj\4.7.1\vlcj-4.7.1.jar