0

我正在使用ModiTect来 Jlink 我的 Java 应用程序。按照自述文件和两个示例undertowvert.x,我将其添加到我的pom.xml

<execution>
    <id>create-runtime-image</id>
    <phase>package</phase>
    <goals>
        <goal>create-runtime-image</goal>
    </goals>
    <configuration>
        <modulePath>
            <path>${project.build.directory}/modules</path>
        </modulePath>
        <modules>
            <module>tech.dashman.dashman</module>
        </modules>
        <outputDirectory>${project.build.directory}/jlink-image</outputDirectory>
    </configuration>
</execution>

我还使用 ModiTect 将module-info.javas 注入到没有它们的依赖项中,但我认为这与这个问题无关。当我运行mvn package它失败并出现以下错误:

[ERROR] Error: Module tech.dashman.dashman not found

那就是这个 pom.xml 的模块。为什么找不到它(当示例似乎表明它会自动找到时)?

添加模块路径使其可找到:

<modulePath>
    <path>${project.build.directory}/modules</path>
    <path>${project.build.directory}/classes</path>
</modulePath>

但我必须指向目录classes中的target子目录,因为如果我指向以便可以找到target该文件,我会收到此错误:jar

[ERROR] Error: Two versions of module tech.dashman.dashman found in C:\Users\pupeno\Documents\Dashman\code\dashman\target (dashman-1.0.0-beta.2.jar and classes)
4

0 回答 0