EOF 异常:cmd 中输入不包含数据

问题描述 投票:0回答:2

尝试在 cmd 中调用 mvn --encrypt-password 密码时,出现此错误:

[ERROR] Error executing Maven.
[ERROR] java.io.EOFException: input contained no data
[ERROR] Caused by: input contained no data

当我调用 mvn --encrypt-master-password somepass 时,它正常执行。有人可以帮我解决这个问题,或者我如何打印整个堆栈跟踪来查找错误。

提前致谢。

maven exception cmd eof
2个回答
6
投票

您需要先创建一个主密码。如果您按照教程此处进行操作,则无法跳过创建主密码的步骤(就像我一样),否则您将收到上述错误。

运行命令:

mvn --encrypt-master-password

根据提示输入您的主密码。将该命令的输出输入到您的

${user.home}/.m2/settings-security.xml
文件中,如下所示

<settingsSecurity>
    <master>{jSMOWnoPFgsHVpMvz5VrIt5kRbzGpI8u+9EF1iFQyJQ=}</master>
</settingsSecurity>

现在,您的

mvn --encrypt-password <yourPassword>
命令应该可以工作了。


0
投票
org.sonatype.plexus.components.sec.dispatcher.SecDispatcherException: java.io.EOFException: input contained no data
at org.sonatype.plexus.components.sec.dispatcher.SecUtil.read (SecUtil.java:66)
at org.apache.maven.cli.MavenCli.encryption (MavenCli.java:924)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:291)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:566)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)

settings-security.xml 未在 mxparser 中解析,请在 settings-security.xml 中添加 xml 标头

<?xml version="1.0" encoding="UTF-8"?>
,它将解决问题。

© www.soinside.com 2019 - 2024. All rights reserved.