Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

829
Visualizações
IntelliJ IDEA: Ejecute java con argumentos desde un archivo externo

Quiero ejecutar una clase Java con argumentos proporcionados como un archivo.

En shell, puedo hacer

 java SomeClass < 1.txt

¿Hay algún equivalente para esto en intellij y/o gradle?

Probé IntelliJ IDEA -> editar configuraciones. Pero, el argumento no se está pasando.

about 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

ACTUALIZAR :

Esta función ahora está disponible para algunas configuraciones de ejecución/depuración. Por el momento, los tipos admitidos para las configuraciones de ejecución basadas en Java son: Aplicación, Java Scratch, JUnit, JarApplication.

Use la opción Redirigir entrada desde :

Redirigir la entrada de


Respuesta original de 2017 con la solución alternativa:

IntelliJ IDEA no lo admite en este momento:

  • IDEA-88717 No hay forma de configurar la lectura de STDIN desde un archivo en las configuraciones de Ejecutar/Depurar

Puede ajustar el código para que acepte el nombre del archivo como parámetro y lo abra para su lectura. O puede crear una clase contenedora que redefinirá System.in y luego iniciar su clase Main original:

 import java.io.File; import java.io.FileInputStream; import java.io.IOException; public class MainWrapper { public static void main(String[] args) throws IOException { FileInputStream is = new FileInputStream(new File("1.txt")); System.setIn(is); Main.main(args); } }

Asegúrese de especificar la ruta completa al archivo o de cambiar el directorio de trabajo en la configuración de ejecución/depuración de IntelliJ IDEA a la ubicación de 1.txt .

Ahora puede ejecutar la clase MainWrapper en lugar de la clase Main y funcionará igual que ejecutar

 java Main < 1.txt

Si necesita probar con diferentes nombres de archivo, reemplace new File("1.txt") con args[0] y pase el nombre de archivo en el campo de argumentos del programa de configuración de ejecución/depuración de MainWrapper .

about 4 years ago · Santiago Trujillo Relatório

0

De hecho, puede hacerlo ahora, a partir de la versión 2018.3 :
- Seleccione "Ejecutar/Depurar configuraciones"
- Establezca la ruta al archivo de entrada en el campo "Redirigir entrada desde"

ingrese la descripción de la imagen aquí

about 4 years ago · Santiago Trujillo Relatório

0

La sintaxis < 1.txt significa que el procesador de comandos garantiza que la entrada estándar ( System.in en Java) proporcione el contenido del archivo 1.txt. El lanzador típico de Java no es compatible con esto.

Puede emular esto reconfigurando manualmente System.in para leer el archivo usando su propio fragmento de código de Java para hacer esto.

about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda