首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javapackager -复制库JDK 9时的NoSuchFileException

Javapackager -复制库JDK 9时的NoSuchFileException
EN

Stack Overflow用户
提问于 2018-03-16 11:18:29
回答 1查看 582关注 0票数 1

当我使用javapacker命令时,当它将库复制到应用程序文件夹时,我会得到一个NoSuchFileException。我正在运行以下命令:

代码语言:javascript
复制
javapackager -deploy -nosign -v -native image -name test 
-appclass test.Test 
-srcdir "E:\projects\test\target"
-srcfiles test-1.0.jar;lib
-outdir "E:\projects\test\target\dist"

任何接缝都可以正常工作,但是输出中的NoSuchFileException和lib文件夹中的库都丢失了(没有复制)。

代码语言:javascript
复制
Running [D:\Java64\jdk-9.0.4\bin\java.exe, -version]
Creating app bundle: test in E:\projects\test\target\dist
"Adding modules: [java.rmi, java.sql, javafx.web, ... long list ... 
outputDir = E:\projects\test\target\dist\test\runtime
modulePath = [D:\Java64\jdk-9.0.4\jmods]
addModules = [java.rmi, java.sql, javafx.web, ... long list ...
limitModules = []
excludeFileList = .*\.diz
stripNativeCommands = true
userArguments = {}
Using default package resource [icon]  (add package/windows/test.ico to the class path to customize)
Using default package resource [Template for creating executable properties file.]  (add package/windows\test.properties to the class path to customize)
Running [D:\Java64\jdk-9.0.4\bin\javapackager.exe, --icon-swap, C:\Users\XXX\AppData\Local\Temp\fxbundler15945263774290817340\windows\test.ico, E:\projects\test\target\dist\test\test.exe]
Icon File Name: C:\Users\XXX\AppData\Local\Temp\fxbundler15945263774290817340\windows\test.ico
Executable File Name: E:\projects\test\target\dist\test\test.exe
Running [D:\Java64\jdk-9.0.4\bin\javapackager.exe, --version-swap, C:\Users\XXX\AppData\Local\Temp\fxbundler15945263774290817340\windows\test.properties, E:\projects\test\target\dist\test\test.exe]
Resource File Name: C:\Users\XXX\AppData\Local\Temp\fxbundler15945263774290817340\windows\test.properties
Executable File Name: E:\projects\test\target\dist\test\test.exe
Exception: java.nio.file.NoSuchFileException: E:\projects\test\target\lib\animal-sniffer-annotations-1.14.jar -> E:\projects\test\target\dist\test\app\lib\animal-sniffer-annotations-1.14.jar
Config files are saved to C:\Users\XXX\AppData\Local\Temp\fxbundler15945263774290817340\windows. Use them to customize package.
Result application bundle: E:\projects\test\target\dist

我不知道输出的下面一行想告诉我什么。这个文件显然存在于我的lib文件夹中,javapackager通过查看lib文件夹找到了它自己,这是我随-srcfiles test-1.0.jar;lib参数提供的。

代码语言:javascript
复制
Exception: java.nio.file.NoSuchFileException: E:\projects\test\target\lib\animal-sniffer-annotations-1.14.jar -> E:\projects\test\target\dist\test\app\lib\animal-sniffer-annotations-1.14.jar

知道为什么javapacker会抱怨文件不存在吗?

EN

回答 1

Stack Overflow用户

发布于 2018-05-30 22:16:24

根据https://docs.oracle.com/javase/9/tools/javapackager.htm#JSWOR719,应该向-srcfiles提供一个文件列表。lib是一个目录。我会尝试使用-srcdir

还有,如果你

异常: java.lang.Exception:错误:在srcfile中不允许模块

这意味着您必须使用--module-path,然后使用-m <module name>设置主模块。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49319501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档