NetBeans 16运行Maven项目deeplearning4j-examples遇文件名过长错误
解决NetBeans中运行deeplearning4j-examples Maven项目时的CreateProcess error=206错误
这个错误是Windows系统命令行参数长度限制导致的——deeplearning4j依赖包数量多,生成的classpath超出了Windows允许的最大长度,exec-maven-plugin启动Java进程时就会触发这个报错。
试试下面几种解决办法:
用maven-shade-plugin打包成可执行Jar
把所有依赖打包到单个Jar里,就不用传递超长classpath了。在项目的pom.xml中添加以下插件配置:<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.4.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <!-- 替换成你要运行的主类全限定名 --> <mainClass>org.deeplearning4j.examples.quickstart.modeling.feedforward.regression.RegressionMathFunctions</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> </build>然后在NetBeans中执行
clean package目标,target目录下会生成带所有依赖的可执行Jar,直接运行这个Jar即可。修改Windows注册表解除路径限制
适用于Windows 10 1607及以上版本:- 按Win+R输入
regedit打开注册表编辑器 - 导航到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem - 找到
LongPathsEnabled项,将其值改为1(没有该项目的话就新建一个DWORD(32位)值) - 重启电脑后生效,系统将支持更长的路径和命令行参数。
- 按Win+R输入
直接用NetBeans内置方式运行主类
右键点击要运行的主类,选择「运行文件」,不要通过Maven的exec目标启动。NetBeans会自行处理classpath,绕开命令行长度限制。
内容的提问来源于stack exchange,提问作者Bob Matthews
相关产品推荐
相关产品推荐

