Cómo configurar el método "Acortar línea de comando" para todo el proyecto en IntelliJ


110

Cuando ejecuto las pruebas, aparece el error "La línea de comandos es demasiado larga". Funciona si configuro el método "Acortar la línea de comando" en la configuración Ejecutar / Depurar en "Manifiesto JAR" para el método o la clase específicos, pero ¿cómo lo configuro para todo el proyecto o hay una configuración global IDE para ello?

Respuestas:


67

Puede configurar una forma predeterminada de acortar la línea de comandos y usarla como plantilla para configuraciones adicionales cambiando la plantilla de configuración de ejecución / depuración JUnit predeterminada . Luego, toda la nueva configuración de Ejecutar / Depurar que cree en el proyecto usará la misma opción.

Aquí está la publicación de blog relacionada sobre la opción de acortador de línea de comandos configurable.


3
Ya no funciona en la nueva versión porque la opción se eliminó. ¿Como hacerlo ahora?
Mulgard

16
La configuración que funcionó para mí es seleccionar la opción "archivo classpath" en el cuadro de diálogo que aparece al hacer clic en el enlace del mensaje de error. Esto se encuentra en la configuración "Acortar línea de comando".
havoc1

1
seleccionar la opción "archivo classpath" funciona y sugeriría incluir esta opción en la respuesta para la versión más nueva de IDE.
MrKumar

@MrKumar obtengo: 'CommandLineWrapper' no es adecuado para iniciar aplicaciones en Java 9+. Si la configuración de ejecución usa "archivo classpath", cámbielo a "@argfile". De lo contrario, comuníquese con el soporte.
Tym Pollack

143

Dentro de su carpeta .idea, cambie el archivo workspace.xml

Añadir

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

a

  <component name="PropertiesComponent">
.
.
.
  </component>

Ejemplo

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

Si no ve uno, no dude en agregarlo usted mismo

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

Este método funciona en el caso de que su versión de intellij no tenga el método GUI para configurar esto. Me gustaría señalar que puede ser el archivo .idea / workspace.xml O el archivo <nombre_proyecto> .iws. Si no tiene una carpeta .idea, busque un archivo .iws en su proyecto.
Dennis Bartlett

salvó mi día! las plantillas predeterminadas no me funcionaron.
hábitats

Me funcionó, gracias
Shylendra Madda

66

Intellij 2018.2.5

Ejecutar => Editar configuraciones => Elegir nodo en el lado izquierdo => expandir Entorno => Acortar opciones de línea de comando => elegir archivo Classpath o manifiesto JAR

Captura de pantalla de la configuración Ejecutar / Depurar que muestra las opciones de la línea de comandos


8
Esta solución debe configurarse como nueva cada vez que ejecute una única prueba que no haya ejecutado antes
4ndro1d

2
Puede configurar esto en la plantilla para el tipo de configuración que está configurando y no será necesario configurarlo para cada nueva prueba / configuración. Consulte la respuesta aceptada para obtener más detalles.
Dennis Bartlett

1
¡Sip! ¡Esto funcionó como un encanto para mí para las pruebas de Android! ¡Gracias!
sud007

gracias eres salvavidas!
Serg Burlaka

2

Gracias a Rajesh Goel en Android Studio:

Ejecutar> Editar configuraciones ...

ingrese la descripción de la imagen aquí

Seleccione una prueba (es mejor seleccionar una clase de prueba principal) y establezca una Shorten command line:opción en classpath file. Luego OK (o Aplicar, OK).

ingrese la descripción de la imagen aquí


0

Si usa la versión JDK de 9+, debe seleccionar

Ejecutar > Editar configuraciones ... > Seleccionar plantilla JUnit .

Luego, seleccione @argfile (Java 9+) como en la imagen a continuación. Por favor pruebalo. Buena suerte amigos.

ingrese la descripción de la imagen aquí

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.