Exécuter le Programme à partir de l'Ide, avec la Ligne de Commande du Fichier d'Entrée
Je suis sous OS x 10.11 avec IntelliJ 14.1.15.
J'ai un programme qui prend un fichier txt comme argument. Je peux le lancer depuis le terminal par java SearchCmd test.txt et puis cela me permet d'entrer un terme de recherche et les recherches qui liste.
Comment puis-je le faire à partir de l'Ide, de sorte que je puis cliquez sur le bouton exécuter et il lit le fichier et je suis en mesure d'entrer un terme de recherche dans la IntelliJ console.
Le principal de la classe de SearchCmd' contient la méthode main, comme tel:
public class SearchCmd {
public static void main (String[] args) throws IOException {
String name;
//Check that a filename has been given as argument
if (args.length != 1) {
System.out.println ("Usage: java SearchCmd <datafile>");
System.exit (1);
}
//Read the file and create the linked list
HTMLlist l = Searcher.readHtmlList (args[0]);
}
Cependant, lorsque j'essaie d'exécuter ce qu'il dit: "Usage: java SearchCmd ".
Afin de passer le test.txt fichier pour IntelliJ, je suis entré dans le chemin d'accès au fichier dans le "Run/Debug Configurations'.
Malheureusement je ne peux pas joindre la photo. 🙁
Toute aide sur la fixation de ce et de m'aider à l'exécuter à partir de l'Ide sera grandement apprécié.
- Si ça aide vraiment, ajouter un lien vers l'image et je vais modifier ton post.
Vous devez vous connecter pour publier un commentaire.
Aller à
Run
->Edit Configurations
, SélectionnezApplication
, puis donner de l'main class
nom etprogram arguments
. PuisRun
.Je viens de pensé à elle.
Ainsi, au lieu de la coller dans un chemin d'accès absolu, vous avez besoin de coller un chemin relatif à partir du répertoire racine de votre IntelliJ projet. Et plus important encore, vous devez omettre la première barre oblique.
Donc mon chemin absolu vers le fichier est peut-être ceci:
Computer/project/TestInput/itcwww-small.txt
Mais le chemin que j'ai besoin de mettre en Programme d'Arguments est:
TestInput/itcwww-small.txt
J'espère que cela va aider quelqu'un d'autre.
OSX 10.11
, je devine que vous êtes en cours d'exécution sur Mac OS. Sur le Mac, l'absolu commence avec/Users/username/<rest_path>
, doncComputer/project/TestInput/itcwww-small.txt
n'est pas un chemin absolu.J'ai eu le même problème et a été très confus avec les réponses précédentes de cette question, alors voici mon explication de quelqu'un qui est perdu comme je l'ai été.
Avec le projet ouvert.
Étapes à suivre-
1. Exécuter->Modifier les Configurations.
2. Sélectionnez Une Application.
3. Fournir principal nom de la classe et les arguments de ligne de commande et à appliquer.
4. Exécuter
Vous devez aller dans le menu Exécuter -> Modifier les configurations.
Sélectionnez votre configuration et ajouter les paramètres dans le champ arguments du Programme
Le domaine arguments du Programme est ce qui apparaît après le nom de la classe à partir de la ligne de commande. Par exemple:
dans votre exemple
le programme argument est test.txt
Remarque: Utiliser un chemin absolu ou vérifiez que le répertoire de travail est le répertoire contenant votre fichier
D'ajouter le nom de fichier d'entrée du chemin d'accès relatif au Programme "Arguments" permettra à la "main" de la méthode de lecture de l'argument dans une "Chaîne"
Toutefois, afin de fait de laisser le Système afin de comprendre à l'aide des données du fichier d'entrée standard, il semble que nous avons spécifiquement pour lire le fichier et de définir le flux d'entrée que le système d'entrée :