J'essaie d'exécuter un programme Java à partir de la ligne de commande sous Windows. Voici mon code:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class CopyFile
{
public static void main(String[] args)
{
InputStream inStream = null;
OutputStream outStream = null;
try
{
File afile = new File("input.txt");
File bfile = new File("inputCopy.txt");
inStream = new FileInputStream(afile);
outStream = new FileOutputStream(bfile);
byte[] buffer = new byte[1024];
int length;
// copy the file content in bytes
while ((length = inStream.read(buffer)) > 0)
{
outStream.write(buffer, 0, length);
}
inStream.close();
outStream.close();
System.out.println("File is copied successful!");
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
Je ne sais pas comment exécuter le programme - une aide? Est-ce possible sous Windows? Pourquoi est-il différent d'un autre environnement (je pensais que la machine virtuelle Java était une fois écrite, exécutée n'importe où)?
javac CopyFile.java
puisjava CopyFile
CopyFile
résideRéponses:
Source: javaindos.
la source
.class
fichier dans la structure de répertoire appropriée. Le répertoire courant est le chemin d'accès aux classes par défaut, vous n'avez donc pas à le définir-cp .
manuellement.Pour compléter la réponse:
Le fichier Java
Compilez le fichier Java dans un fichier * .class
TheJavaFile.class
fichierExécution du fichier Java
Création d'un
*.jar
fichier exécutableVous avez deux options ici -
Avec un fichier manifeste externe:
Créez le fichier manifeste say - MANIFEST.mf
Le fichier MANIFEST n'est rien d'autre qu'une entrée explicite de la classe principale
jar -cvfm TheJavaFile.jar MANIFEST.mf TheJavaFile.class
Exécutable par Entry Point:
jar -cvfe TheJavaFile.jar <MainClass> TheJavaFile.class
Pour exécuter le fichier Jar
la source
java TheJavaFile
c'est équivalent àjava TheJavaFile.class
.. donc vous n'exécutez pas le fichier java comme vous l'avez dit. vous exécutez le fichier de classe. les fichiers java sont des sources qui ne sont pas exécutablesDans le cas où votre classe Java est dans un package. Supposons que votre classe Java nommée
ABC.java
soit présente danscom.hello.programs
, alors vous devez l'exécuter avec le nom du package.Compilez-le de la manière habituelle:
Mais pour l'exécuter, vous devez donner le nom du package puis votre nom de classe java:
la source
Complétez un fichier Java pour générer une classe:
Exécutez la classe générée:
la source
C'est facile. Si vous avez enregistré votre fichier sous A.text, la première chose à faire est de l'enregistrer sous A.java. Maintenant, c'est un fichier Java.
Vous devez maintenant ouvrir cmd et définir le chemin d'accès à votre fichier A.java avant de le compiler. vous pouvez consulter ce pour cela.
Ensuite, vous pouvez compiler votre fichier en utilisant la commande
Ensuite, exécutez-le en utilisant
C'est ainsi que vous compilez et exécutez un programme java en cmd. Vous pouvez également parcourir ce matériel qui est Java dans des leçons approfondies. Beaucoup de choses que vous devez comprendre en Java y sont couvertes pour les débutants.
la source
Vous pouvez compiler n'importe quelle source java en utilisant javac en ligne de commande; par exemple, javac CopyFile.java. Pour exécuter: java CopyFile. Vous pouvez également compiler tous les fichiers java à l'aide de javac * .java tant qu'ils se trouvent dans le même répertoire
Si vous rencontrez un problème résultant de "Impossible de trouver ou de charger la classe principale", il se peut que jre ne soit pas sur votre chemin. Jetez un oeil à cette question: Impossible de trouver ou de charger la classe principale
la source
En supposant que le fichier s'appelle "CopyFile.java", procédez comme suit:
La première ligne compile le code source en code octet exécutable. La deuxième ligne l'exécute, ajoutant d'abord le répertoire courant au chemin de classe (juste au cas où).
la source
Depuis Java 11, l'
java
outil de ligne de commande est capable d'exécuter directement un code source à fichier unique. par exempleIl s'agissait d'une amélioration avec JEP 330: https://openjdk.java.net/jeps/330
Pour plus de détails sur l'utilisation et les limitations, consultez le manuel de votre implémentation Java tel que celui fourni par Oracle: https://docs.oracle.com/en/java/javase/11/tools/java.html
la source
Sur Windows 7, je devais faire ce qui suit:
manière rapide
long chemin
Cela se brise probablement lorsque vous mettez à niveau votre installation JDK, mais vous avez maintenant accès à tous les outils de ligne de commande.
Suivez les commentaires ci-dessus sur la façon de compiler le fichier ("javac MyFile.java" puis "java MyFile") https://stackoverflow.com/a/33149828/194872
la source
ÉTAPE 1: OUVREZ D'ABORD LA DEMANDE DE COMMANDE OERE SE TROUVE VOTRE FICHIER. (clic droit tout en appuyant sur Maj)
ÉTAPE 2: PUIS UTILISEZ LES COMMANDES SUIVANTES POUR EXÉCUTER. (disons que le nom du fichier et de la classe à exécuter est nommé Student.java) L'exemple de programme est en arrière-plan de l'image.
la source
Depuis Java 9, le JDK comprend
jshell
, un Java REPL.En supposant que le
bin
répertoire JDK 9+ est correctement ajouté à votre chemin, vous pourrez simplement:jshell File.java
-File.java
étant votre fichier bien sûr.main
méthode:jshell> File.main(null)
./exit
La documentation complète de JShell est disponible ici .
la source
Maintenant (avec JDK 9 et suivants), vous pouvez simplement utiliser java pour l'exécuter. Pour exécuter "Hello.java" contenant le main, on peut utiliser: java Hello.java
Vous n'avez plus besoin de compiler en utilisant séparément en utilisant javac.
la source