当我运行测试时,我得到错误“命令行太长”。 如果我在运行/调试配置中将“缩短命令行”方法设置为特定方法或类的“JAR清单”,它就可以工作,但我如何为整个项目设置它,或者有IDE全局设置吗?
您可以设置一种默认方式来缩短命令行,并通过更改默认的JUnit Run/Debug Configuration模板将其用作进一步配置的模板。然后,您在项目中创建的所有新的运行/调试配置将使用相同的选项。
这是一篇关于可配置命令行缩短选项的相关博文。
在。idea文件夹中,更改workspace.xml文件
Add
<property name="dynamic.classpath" value="true" />
to
<component name="PropertiesComponent">
.
.
.
</component>
例子
<component name="PropertiesComponent">
<property name="project.structure.last.edited" value="Project" />
<property name="project.structure.proportion" value="0.0" />
<property name="project.structure.side.proportion" value="0.0" />
<property name="settings.editor.selected.configurable" value="preferences.pluginManager" />
<property name="dynamic.classpath" value="true" />
</component>
如果您没有看到,请自行添加
<component name="PropertiesComponent">
<property name="dynamic.classpath" value="true" />
</component>
社区编辑:这个解决方案似乎在新版本的IDE中不起作用,PropertiesComponent的格式现在不同了。如果这是你的情况,那么这个答案应该有用
智能 2018.2.5
Run => Edit Configurations =>选择左边的Node => expand Environment => Shorten Command line options =>选择Classpath file or JAR manifest
感谢Rajesh Goel在Android Studio的贡献:
执行>编辑配置…
选择一个测试(最好选择一个父测试类),并将Shorten命令行:选项设置为类路径文件。然后OK(或Apply, OK)。
如果您使用JDK版本从9+,您应该选择
执行>编辑配置…>选择JUnit模板。
然后,选择如下图所示的@argfile (Java 9+)。
如果您没有看到“缩短”命令行,那么只需单击如下所示的“修改选项”菜单,然后选择“缩短”命令行
请试试。朋友们,祝你们好运。
最新的2020版本默认没有缩短命令行选项,我们需要从配置中添加该选项。
执行> Edit Configurations >选择相应的运行配置,单击“Modify options”,将缩短命令行配置添加到界面中。
选择shorten命令行选项
现在从shorten命令行选项中选择jar清单
添加<property name="dynamic. "<component name="PropertiesComponent">标签下的。idea/workspace.xml文件。这对我很管用。
在我的例子中,错误是:
Error running 'MasterFileGenerator':
Command line is too long. Shorten command line for StagingFileGenerator or also for Application default configuration.
解决方案是切换到“运行/调试配置”,并从用户本地默认:none - java [options] className [args]切换到JAR manifest - java -cp classpath.jar className [args]。
坚持:
打开Intellj ctrl + shift + n 类型workspace.xml 查找组件名称="PropertiesComponent"标签 A)如果有属性列表,添加
<属性名= "动态。类路径" value="true" />
b)如果有keyToString json,在map中添加新行:
“dynamic.classpath":“true" (记住上面一行的逗号)
(可选)如果你想在另一个项目中也启用这个配置,重启intellj
推荐文章
- 在IntelliJ 10.5中运行测试时,出现“NoSuchMethodError: org.hamcrest. matcher . descripbemismatch”
- 如何使用“测试”包打印Go测试?
- 如何在IntelliJ中为整个项目配置“缩短命令行”方法
- toBe(true) vs toBeTruthy() vs toBeTrue()
- 什么时候应该使用Debug.Assert()?
- 开发Android应用最好的IDE是什么?
- IntelliJ: Error:java: Error: release version 5不支持
- 从控制台停止一个Android应用程序
- Lombok注释不能在Intellij思想下编译
- 使Android模拟器运行得更快
- 在Intellij IDEA中跳转到编辑器快捷方式
- 禁用IntelliJ IDEA的拼写检查功能
- 不能忽略。idea/workspace.xml -不断弹出
- 如何在CamelCase中部分浏览源代码(而不是整个单词)?
- 如何“去测试”我的项目中的所有测试?