Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Zdravím, chtěla bych se zeptat, zda by mi někdo nemohl vysvětlit rozdíl mezi tím, že když do příkazové řádky zadám java Ahoj....tak se mi na obrazovku vypíše to co program Ahoj. java obsahuje.
Nerozumím tomu, co znamená že se má spustit dávkový soubor, jak je v zadání, nemohl by mi to někdo vysvětlit? Děkuji.
Offline
↑ aferon:
Ahoj, viděl jsem tvůj dotaz i na nástěnce UPG(pokud je od tebe), pokud máš zájem, můžem si ve volném čase(pokud bude) nad tím sednout :-) - já už tu hrůzu mám za sebou.
Konkrétně k dotazu:
Máš vytvořit něco = konrétně (cmd script), který za tebe spustí program.
Tedy. To ahoj, jak uvádíš, napíšeš jen do souboru.
Vytvoříš si soubor RUN.CMD ( ZMĚN KONCOVKU na CMD !!! ) do něj napíšeš kód pro spuštění, konrkétně java ahoj parametr1........ atd :-)
Doufám že to je jasné.......
Shrnutí:
Abys nemusel jako otrok psát do okna CMD příkazy, napíšeš je do dávkového souboru a ten pak jen rozklikáš :-)
Offline
↑ PanTau:
Ahoj, dekuju za odpoved a ano, psala jsem to já :)
Dneska mi odepsali :
3) Nebudeme nikterak student omezovat: at si praci napisi v libovolnem vyvojovem prostredi, s vyuzitim libovolne knihovny, at si to pojmenuji, jak chteji, a strukturuji, jak chteji, ale at spolu s odevzdanim dodaji Run.cmd, ve kterem bude to individualni spusteni. Cvicici pak akorat zavola “Run.cmd parametr1 parametr2 parametr3“ a Run.cmd uvnitr napr. zavola “java Ahoj %1 %2 %3“, tj. dojde k zavolani “java Ahoj parametr1 parametr2 parametr3”. Aplikace bezi.
Aplikace vsechny parametry dostane z prikazoveho radku. Od uzivatele nic NENACITA.
Obdobne se to ma s Build.cmd. Kdyby vsichni studenti odevzdavali vse na plny pocet bodu a ihned funkcne, tak bychom tento soubor vubec nepotrebovali. Ale cas od casu se stane, ze v kodu studenta je neco spatne (jako napr. cte data z adresare E:\vstup.txt), takze cvicici potrebuje provest rychly zasah v kodu a provest preklad. Nez aby oteviral vyvojove prostredi, zkoumal package, ... tak jednoduse zavola Build.cmd, davkovy soubor, ktery obsahuje nejake to javac + mozna nejake to copy.
Co se tyce druhe otazky (Dále se chci zeptat na výběr režimu, jakým způsobem si uživatel má vybrat?) – prectete si zadani. Aplikace se na nic nepta. Uzivatel veskere parametry jiz predal pri spousteni v ramci pripkazoveho radku.
Stale nevim, co tedy ma byt v tom souboru Run.CMD, co mysli tim individualnim spustenim. Jak mysli to, ze od uzivatele se nic nenacita, no vzdyt ty parametry na tu prikazovou radku musim zapsat.
Offline
↑ aferon:
Ahoj, jednoduchý příklad. Máš program, který sečte 2 čísla. Ty čisla zadáš při běhu programu (přes scanner- v jave).
Aby učitel nemusel pokaždé psát čísla ručně. Vloží je do RUN.CMD a načte je přes parametry - to zařídíš ty, naprogramuješ to.
Už je to jasné?
Offline
Nevyžádá, ale přímo vezme.
Pomocí pole argumentů
NAPŘ.
puštění programu AHOJ
java ahoj PARAMETR
Zdrojový kód pouze metoda main
public static void main(String[] args){ System.out.println(args[0]); // OBSAHUJE SLOVO PARAMETR }
Offline
↑ aferon:
do textového souboru run.cmd napíšeš
java -cp lib\*; Main %*
nebo
java -cp Main %*
kde lib je adresář kde máš případné knihovny a Main je hlavní třída (kde je funkce Main). To %* na konci způsobí, že můžeš zadat parametry, které máš uvedeny na obrázku.
Takže potom místo:
java -cp Main 50 60
píšeš jenom
run.cmd 50 60
V tom run.cmd můžeš mít i více příkazů, třeba spustíš několik programů za sebou, proto se tomu říká dávkový soubor.
Načítaní parametrů z příkazové řádky, jste se učili, to ale nesouvisí s tím souborem, ale s tvím programem.
Přes build.cmd zase zkompiluješ svoje třídy.
javac -d ..\bin -cp ..\bin\lib\*; *.java
Do adresáře bin se uloží .class v lib jsou zase knihovny.
Místo toho dlouhého příkazu tedy můžeš zavolat jenom build.cmd a všechno se ti přeloží.
run.cmd umísti do adresáře bin kde jsou .class a build.cmd do adresáře src.
Offline
↑ gladiator01:. ↑ PanTau:
Tak Run.CMD sem uz pochopila :) ale co jeste teda dela ten Build.cmd?...Chapu to tak ze od teda prelozi kod Ahoj. Java. Takze ten soubor Build.cmd ma pouze obsahovat "odkaz" na program Ahoj.java?
Offline
↑ aferon:
Soubor build má obsahovat posloupnost příkazů, pomocí níž přeložíš svůj program.
Například.
javac Ahoj.java
Nebo
javac *.java
atd.......
Offline
↑ aferon:
A jéje, doufám že neprogramuješ v notepadu :-)
1) public class abc
2) String[] args a ne String args[]
Viz ukázka:
public class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); } }
Offline
↑ aferon:
Zkus :-)
Pokud budeš potřebovat pomoc, bylo by lepší použít nějakýho kecálka (skype, icq, facebook), myslím si, že toho máš ještě dost na práci.
Pokud máš zájem, napiš mi soukromou zprávu.
Offline
↑ aferon:
Tady ti přeci lidé radí dobrovolně a kdyby nechtěli, tak neradí, svět není plnej jen tich zlejch. :-)
Udělal jsem ti ukázku:
SOUBOR test.java :
public class test{ public static void main(String[] args){ if(args.length!=0) System.out.println("Ahoj, tohle je ukázka cmd: " + args[0]); } }
Přelož....
Soubor run.cmd :
java test "vstup z cmd"
Postup:
překlad: javac test.java
spuštěni: run.cmd
Offline