Diskuze: Jak otevřít a spustit .java soubor v NetBeans ?
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 3 zpráv z 3.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Netbeans fungují na úrovni projektů, takže si na tu flashku nahrej celý ten projekt ne jenom jeden java soubor, a pak otvírej v Netbeans celý ten projekt.
Možná špatně chápeš, jak Java jako taková funguje.
Máš mnoho způsobů, jak spouštět Java programy. Když pominu webové
technologie, které k tomu potřebují aplikační servery, tak máš v
podstatě dvě možnosti.
V souborech .java uchováváš svůj vlastní kód, který jsi někde
naťukal.
Ten je přizpůsobený takovému jazyku, aby ti to bylo bližší a abys ho mohl
lépe číst. Jenže to, co napíšeš, tak to ten počítač nepochopí.
Kupříkladu počítač nepochopí, že tady existuje nějaká třída s názvem
System. I ve 21. století stále počítače pracují na principu jedniček a
nul:)
Je to docela pěkně popsané v první lekci zdejšího Java tutoriálu. Ty
musíš svůj zdrojový kód ZKOMPILOVAT do tzv. bytekódu, který potom
převede použitý interpret do strojového kódu a s tím už umí počítač
pracovat.
Tak a teď co to pro tebe znamená v praxi:)
To, že si přeneseš .java soubor, tak to je v podstatě to hlavní krédo
celého programu. Jak máš zdroják, můžeš s tím něco dělat.
Pokud máš jen .java soubory, tak na počítači, kde je nainstalováno JDK (a
správně nastaveno - což bohužel musí dnes programátoři i kontrolovat,
protože od té doby, co to převzal oracle, tak instalace Javy dělá mnohým
programátorům problémy), tak můžeš buď:
No a to IDE ti ten zdroják při spuštění samo zkompiluje (do .class souborů) a ty ho můžeš opět pustit.
No ale předpokládám, že už jsi asi něco naprogramoval a chtěl by ses
tím pochlubit a samozřejmě by bylo divné, kdybys to chtěl někomu poslat a
on by si musel instalovat IDE a dělat výše uvedenou proceduru. To je
samozřejmě blbost a Java nabízí řešení.
V podstatě na počítači, kde běží běhové prostředí (JRE - Java Runtime
Enviroment), tak můžeš spustit jakékoliv jarko (JAR = Java ARchiver). To je
obyčejná zazipovaná složka, která v sobě obsahuje manifest soubor, kterým
spustí main metodu.
Existuje několik způsobů, jak toto JARko vytvořit. Potom už ti stačí
posílat to JARko a máš spustitelnou aplikaci (i na dvojklik z plochy;) )
Je o tom tady i tutoriál, ale v podstatě...
Pokud používáš netbeans, tak Jarko se ti vygeneruje, když zvolíš položku
z menu **Run **-> **Build Project **(nebo v horní liště klikneš na to
kladívko - to je to samé).
No a pak se podíváš do adresáře projektu. Vytvořil se ti tam nový
adresář dist (distribute) a v něm máš JAR soubor.
V IDEI je to malinko komplikovanější (ale to je jen dobře -zvlášť
proto, protože si můžeš do JARka takhle lehčeji přidat i zdrojové kódy).
Ono totiž ten JAR soubor jde rozzipovat (úplně stejně, jako když
rozzipuješ zip adresář). No a v netbeansech se ti zaarchivují pouze .class
soubory. V IDEI si tam můžeš takto přidat i třeba zdrojáky (což vůbec
není špatné). Je potom samozřejmě nebezpečí, že pokud to někomu
pošleš a on to rozzipuje, tak má ihned i tvé zdrojáky k dispozici a může
si tvoji aplikaci upravit. Záleží čistě na tobě, jak se rozhodneš a jak
to použiješ.
V IDEI tedy musíš nastavit nejdřív tzv. Artifact a až ten potom zbuildíš
a vytvoříš z něj archív.
S Eclipsem ti neporadím. Pro mě osobně je to příšerné IDE, které používá spoustu svých vlastních názvů a pro mě osobně je strašně nepřehledné a nenabízí tolik nastavitelných možností, které bych si přál. Naopak tě to táhne do svých vlastních konvencí. Ale to je čistě můj osobní názor. Jestli se tu někdo najde, kdo v tom dělá, tak ti možná poradí, ale já eclipse těžce zavrhuji.
No a pak je tu další způsob... v podstatě to, co dělají ta IDEčka na
pozadí za tebe. A to, že si to napíšeš v cli (v příkazové řádce).
Není to nijak velice složité, ale já osobně do takovýchto věcí
začátečníky nezatahuji, protože jednak to v praxi využiješ minimálně a
hlavně na co se učit něco, co za tebe udělá IDE? Je sice hezké, že to
třeba víš, ale je to fakt zbytečné.
Ovšem kdyby tě to zajímalo, tak tady mám postup, který funguje. (ale nezlob
se na mě, formátovat ho nebudu, protože je to fakt jen na okrasu).
Budeme používat GIT BASH v domnění, že je vše nainstalováno a nastaveno správně.
touch Soubor.java
3. Příkazem „vim“ otevřete super editor (pokud neumíte s vimem, tak
jste hodně špatní, ale ok, tak si to otevřete v nějakém jiném
editoru)
vim soubor.java
4. Napište jednoduchý prográmek pro vytvoření malého okýnka
import javax.swing.*;
public class Soubor {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setSize(400, 400);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
5. Zkompilujeme program pomocí příkazu javac
javac Soubor.java
6. Pro zkoušku zkusíme spustit aplikaci pomocí příkazu java
java Soubor
7. Nyní vytvoříme manifest soubor (a použijeme rychlejší cestu, takže
rovnou i spustíme editor)
vim manifest.txt
8. A napíšeme do něj mocný příkaz, kterým určíme main class
Main-Class: Soubor
9. Teď vytvoříme jar soubor pomocí příkazu jar cvfm
jar cvfm Testovaci.jar manifest.txt *.class (nebo by se dalo napsat jar cvfm
Testovaci.jar manifest.txt Soubor.class, protože máme jen jeden class
soubor)
10. No a spustíme si jarko
java –jar Testovaci.jar
Zobrazeno 3 zpráv z 3.