Snažím sa spustiť program Java z príkazového riadku v systéme Windows. Tu je môj kód:
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();
}
}
}
Nie'som si istý, ako program spustiť - pomôže mi niekto? Je to možné v systéme Windows? Prečo je to iné ako v inom prostredí (myslel som, že JVM je write once, run anywhere)?
Zdroj: javaindos.
Povedzme, že váš súbor je v C:\mywork\
Spustite príkazový riadok
C:> cd \mywork
Tým sa aktuálnym adresárom stane C:\mywork.
C:\mywork> dir
Zobrazí obsah adresára. Mali by ste vidieť filenamehere.java medzi súbormi.
C:\mywork> set path=%path%;C:\Program Files\Java\jdk1.5.0_09\bin
Týmto poviete systému, kde má nájsť programy JDK.
C:\mywork> javac filenamehere.java
Spustí sa javac.exe, kompilátor. Nemali by ste vidieť nič iné ako ďalšiu systémovú výzvu...
C:\mywork> dir
javac vytvoril súbor filenamehere.class. Mali by ste vidieť filenamehere.java a filenamehere.class medzi súbormi.
C:\mywork> java filenamehere
Spustí sa interpreter jazyka Java. Potom by ste mali vidieť svoj program výstup.
Ak systém nemôže nájsť javac, skontrolujte príkaz set path. Ak javac spustí, ale zobrazujú sa chyby, skontrolujte text Java. Ak sa program skompiluje, ale dostanete výnimku, skontrolujte pravopis a písanie veľkých písmen v názve súboru a v názve triedy a java príkaz HelloWorld. V Jave sa rozlišujú veľké a malé písmená!
Skompilujte súbor Java na generovanie triedy:
javac filename.java
Vykonajte vygenerovanú triedu:
java filename
V príkazovom riadku môžete skompilovať ľubovoľný zdrojový kód jazyka java pomocou príkazu javac ; napr. javac CopyFile.java. Spustenie : java CopyFile. Môžete tiež skompilovať všetky súbory java pomocou príkazu javac *.java, pokiaľ'sú v tom istom adresári
Ak'máte problém, ktorého výsledkom je "nemohol nájsť alebo načítať hlavnú triedu", možno nemáte jre vo vašej ceste. Pozrite sa na túto otázku: https://stackoverflow.com/questions/7647448/could-not-find-or-load-main-class