【问题标题】:How to configure "Shorten command line" method for whole project in IntelliJ如何在 IntelliJ 中为整个项目配置“缩短命令行”方法
【发布时间】:2018-06-04 05:09:16
【问题描述】:

当我运行测试时,我收到错误“命令行太长”。 如果我将运行/调试配置中的“缩短命令行”方法设置为特定方法或类的“JAR 清单”,它会起作用,但是如何为整个项目设置它,或者是否有 IDE 全局设置呢?

【问题讨论】:

    标签: testing intellij-idea settings


    【解决方案1】:

    在您的 .idea 文件夹中,更改 workspace.xml 文件

    添加

    <property name="dynamic.classpath" value="true" />
    

      <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>
    

    【讨论】:

    • 此方法适用于您的 intellij 版本没有设置此选项的 GUI 方法的情况。我想指出,它可能是 .idea/workspace.xml 文件或 .iws 文件。如果您没有 .idea 文件夹,请在您的项目中搜索 .iws 文件。
    • 拯救了我的一天!默认模板对我不起作用。
    • 谢谢!它适用于 Android Studio 4.0
    • 这对我不起作用,虽然显然对其他人有用所以不知道为什么
    • 如果找不到 .iws 文件或 /.idea 目录,也可以在 .iml 文件中执行此操作
    【解决方案2】:

    Intellij 2018.2.5

    运行 => 编辑配置 => 选择左侧的节点 => 展开环境 => 缩短命令行选项 => 选择类路径文件或 JAR 清单

    【讨论】:

    • 每次你运行一个你以前没有运行过的测试时都必须设置新的解决方案
    • 您可以在模板上为您正在设置的配置类型进行设置,并且不需要为每个新的测试/配置进行设置。有关详细信息,请参阅接受的答案。
    • 是的!这对我来说就像是 Android 测试的魅力!谢谢!
    【解决方案3】:

    您可以通过changing the default JUnit 运行/调试配置模板设置默认方式来缩短命令行并将其用作进一步配置的模板。然后,您在项目中创建的所有新运行/调试配置都将使用相同的选项。

    这里是related blog post 关于可配置的命令行缩短选项。

    【讨论】:

    • 它在新版本中不再起作用,因为该选项已被删除。现在怎么办?
    • 对我有用的设置是在单击错误消息链接出现的对话框中选择选项“类路径文件”。这是在“缩短命令行”设置下。
    • 选择选项“类路径文件”有效,我建议将此选项包含在更新版本 IDE 的答案中。
    • @MrKumar 我得到:'CommandLineWrapper' 不适合在 Java 9+ 上启动应用程序。如果运行配置使用“类路径文件”,请将其更改为“@argfile”。否则,请联系支持人员。
    • 嘿@TymPollack 我也明白了,并通过运行 -> 编辑配置来修复它。在缩短命令行部分,我选择了用户本地选项并且它有效。试试看它是否有效。我在 AS 4.2
    【解决方案4】:

    感谢Android Studio 中的 Rajesh Goel:

    运行 > 编辑配置...

    选择一个测试(最好选择一个父测试类)并将Shorten command line: 选项设置为classpath file。然后确定(或应用,确定)。

    【讨论】:

    • 使用 shorten command line 中的 JAR 清单选项对我有用。
    • 何时升级到 Android Studio 4.2 我遇到了与@AndrewChelix 提到的“使用 JAR 清单选项”解决问题相同的问题
    【解决方案5】:

    最新的 2020 版本默认没有缩短命令行选项,我们需要从配置中添加该选项。

    运行 > 编辑配置 > 选择相应的运行配置并点击修改选项,将缩短的命令行配置添加到 UI。

    选择缩短命令行选项

    现在从缩短命令行选项中选择 jar manifest

    【讨论】:

    • 我找不到任何解决方案,因为所有答案都是旧版本!这真的对我有帮助!非常感谢!
    【解决方案6】:

    如果你使用JDK 9+版本,你应该选择

    运行 > 编辑配置... > 选择 JUnit 模板。

    然后,选择 @argfile (Java 9+),如下图所示。

    如果您没有看到 Shorten command line,则只需点击如下 Modify options 菜单,然后选择 Shorten command line

    请试一试。祝朋友好运。

    【讨论】:

      【解决方案7】:

      &lt;property name="dynamic.classpath" value="true" /&gt; 添加到.idea/workspace.xml 文件的&lt;component name="PropertiesComponent"&gt; 标记下。这对我有用。

      【讨论】:

      • +1。在缩短命令行配置中设置类路径文件似乎对我不起作用,但确实如此。
      【解决方案8】:

      按照此步骤并从缩短命令行类别中给出的下拉列表中选择“classpath.file”选项。

      【讨论】:

        猜你喜欢
        • 2018-08-08
        • 2018-09-22
        • 2020-11-15
        • 1970-01-01
        • 2021-05-26
        • 1970-01-01
        • 1970-01-01
        • 2018-06-14
        • 1970-01-01
        相关资源
        最近更新 更多