简体   繁体   English

使用Java 9在Linux上创建模块化jar时出现java.nio.file.NoSuchFileException

[英]java.nio.file.NoSuchFileException while creating a modular jar on Linux using Java 9

I have been trying to create a modular JAR in Java 9 running on Linux. 我一直在尝试在Linux上运行的Java 9中创建模块化JAR。 Every time I run the command: jar --create --file=mlib/math.util@1.0.jar --module-version 1.0 -C mods/math.util . 每次我运行命令时: jar --create --file=mlib/math.util@1.0.jar --module-version 1.0 -C mods/math.util . I get the following exception 我得到以下异常

java.nio.file.NoSuchFileException: /tmp/math.util@1.0.jar2983688172420627243.jar -> mlib/math.util@1.0.jar
        at sun.nio.fs.UnixException.translateToIOException(java.base@9-ea/UnixException.java:92)
        at sun.nio.fs.UnixException.rethrowAsIOException(java.base@9-ea/UnixException.java:111)
        at sun.nio.fs.UnixCopyFile.move(java.base@9-ea/UnixCopyFile.java:462)
        at sun.nio.fs.UnixFileSystemProvider.move(java.base@9-ea/UnixFileSystemProvider.java:263)
        at java.nio.file.Files.move(java.base@9-ea/Files.java:1398)
        at sun.tools.jar.Main.validateAndClose(jdk.jartool@9-ea/Main.java:526)
        at sun.tools.jar.Main.run(jdk.jartool@9-ea/Main.java:397)
        at sun.tools.jar.Main.main(jdk.jartool@9-ea/Main.java:1769)

But the same command worked fine on Java 9 running on Windows. 但是,该命令在Windows上运行的Java 9上也可以正常工作。 And I was able to successfully create the JAR. 而且我能够成功创建JAR。

I have been trying as root user on Linux. 我一直在尝试以Linux的root用户身份。

can someone help me with solving this issue? 有人可以帮助我解决这个问题吗?

我发现在运行JAR命令之前并没有创建mlib目录,因此没有例外。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM