Comment exécuter un programme Java à partir d'un terminal mac? [dupliquer]


Cette question a déjà une réponse ici:

J'ai téléchargé le code source du programme Java ( Mario AI Benchmark) avec lequel j'aimerais travailler pour intégrer éventuellement certains scripts Python. N'importe quoi .fichier java j'essaie de courir J'obtiens la même chose erreur:

alavin$ java src/ch/idsia/scenarios/Play.java
Error: Could not find or load main class src.ch.idsia.scenarios.Play.java

Y a-t-il quelque chose que je dois faire après avoir téléchargé le code source avant de pouvoir en exécuter un .fichiers java? C'est-à-dire dois-je compiler, décompresser, faire quelque chose?

Je suis relativement nouveau sur Java et j'apprécie toute aide que vous pouvez offrir. J'ai parcouru quelques tutoriels Java mais ils sont trop simples-c'est-à-dire que je ne sais toujours pas comment exécuter un grand programme Java avec plusieurs répertoires (res, src, etc.)

MISE À JOUR: J'ai essayé de compiler d'abord avec {[1] } et l'étape de compilation renvoie 15 erreurs, toutes similaires à ch/idsia/scenarios/Play.java:3: error: package ch.idsia.ai.agents does not exist.

Dois-je compiler tous les répertoires à la fois? Si oui, comment puis-je faire cela?

Author: BoltzmannBrain, 2015-03-22

1 answers

Vous devez d'abord compiler le programme dans un fichier .class en utilisant javac.

javac src/ch/idsia/scenarios/Play.java

Puis exécutez le fichier .class créé (Remarque-Sans l'extension .java ou .class)

java src/ch/idsia/scenarios/Play 

Ref - Documentation sur la Compilation

Compiler le Programme

Un programme doit être converti en une forme que la machine virtuelle Java peut comprendre n'importe quel ordinateur avec une machine virtuelle Java peut interpréter et exécuter le programme. Compiler un programme Java signifie prendre le texte lisible par le programmeur dans votre fichier de programme (également appelé code source) et le convertir en bytecodes, qui sont des instructions indépendantes de la plate-forme pour Java VM.

 2
Author: Bhargav Rao, 2015-03-22 20:14:20