无法 运行 程序 CreateProcess error=206,文件名或扩展名太长

Cannot run program CreateProcess error=206, The filename or extension is too long

我在 pom 文件中使用 jvmarguments 时收到标题错误。我正在使用带有以下插件的 mvnw 命令来启用调试。如果我删除 jvm 参数,它就可以工作。但是我想用 mvnw 命令启用远程调试

代码段:

<plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <executions>
            <execution>
                <goals>
                    <goal>repackage</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <mainClass>${start-class}</mainClass>
            <executable>true</executable>
            <fork>true</fork>
            <jvmArguments>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments> 
        </configuration>
</plugin>

错误:

*[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.0.7.RELEASE:run (default-cli) on project dxcgateway: Could not exec java: Cannot run program "C:\Program Files\Java\jdk1.8.0_202\jre\bin\java.exe": CreateProcess error=206, The filename or extension is too long -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.0.7.RELEASE:run (default-cli) on project dxcg ateway: Could not exec java

Caused by: java.io.IOException: Cannot run program "C:\Program Files\Java\jdk1.8.0_202\jre\bin\java.exe": CreateProcess error=206, The filename or extension is too long at java.lang.ProcessBuilder.start (ProcessBuilder.java:1048) at org.springframework.boot.loader.tools.RunProcess.run (RunProcess.java:77)

Caused by: java.io.IOException: Cannot run program "C:\Program Files\Java\jdk1.8.0_202\jre\bin\java.exe": CreateProcess error=206, The filename or extension is too long at java.lang.ProcessBuilder.start (ProcessBuilder.java:1048) at org.springframework.boot.loader.tools.RunProcess.run (RunProcess.java:77)*

如果您使用的是 IntelliJ Idea 平台,只需更改启动配置即可避免使用默认的短线

这对我有用。

我使用了以下命令并且有效。 mvnw -Dmaven.repo.local=C:/mavenRepo

改变

<fork>true</fork>

<fork>false</fork>

这是由 Windows OS 限制引起的。解决方法:

  1. 将 .m2 存储库移动到 c:\
  2. 从 %MAVEN_HOME%/conf 打开 settings.xml 并查找 .(如果已经注释掉则取消注释)并将其值更改为 c:/.m2/repository
  3. 保存文件并运行再次构建

对我来说我有类似的异常,下面的更改解决了问题

        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <fork>false</fork>
            </configuration>
        </plugin>