如何使用 Maven Moditect 插件错误修复“无法为 *.jar 派生模块描述符”?

问题描述

我正在创建一个基于 Maven 的 JavaFX 15 应用程序,并正在使其模块化,以便能够使用 javafx:jlink 为其生成运行时映像。

为了解决自动模块的问题,我使用了 Moditect plugin,但现在遇到了不同的错误

执行 generate-module-info 目标的 org.moditect:moditect-maven-plugin:1.0.0.RC1:generate-module-info 失败:无法为其派生模块描述符 path\to\xalan-2.7.2.jar

这些是我的 pom.xml 中最重要的部分:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <dependencies>
        <!-- ...JavaFX graphics and controls...-->

        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>5.0.0</version>
        </dependency>

        <dependency>
            <groupId>org.moditect</groupId>
            <artifactId>moditect-maven-plugin</artifactId>
            <version>1.0.0.RC1</version>
        </dependency>

        <!-- ...Other dependencies-->
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.0</version>
            </plugin>

            <plugin>
                <groupId>org.openjfx</groupId>
                <artifactId>javafx-maven-plugin</artifactId>
                <version>0.0.5</version>
                <configuration>
                    <mainClass>...</mainClass>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.moditect</groupId>
                <artifactId>moditect-maven-plugin</artifactId>
                <version>1.0.0.RC1</version>
                <executions>
                    <execution>
                        <id>generate-module-info</id>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>generate-module-info</goal>
                        </goals>
                        <configuration>
                            <modules>
                                <!-- This is the module causing the problem -->
                                <module>
                                    <artifact>
                                        <groupId>org.apache.poi</groupId>
                                        <artifactId>poi-ooxml</artifactId>
                                        <version>5.0.0</version>
                                    </artifact>
                                </module>
                            </modules>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

我知道像 this one 这样已经有很多人问过这个问题,但他们的回答都没有详细说明如何解决这个问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)