Diskuze: Unable To Launch
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 8 zpráv z 8.
//= 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.
Anoo vďaka. Ale zaujímalo by ma samozrejme čo som robil zle, alebo kvôli čomu to nešlo spustiť? Aby som ten problém poznal trochu hlbšie, než len čo mám stlačiť. Vedel by si mi to vysvetliť? Každopádne už to funguje
Máš to špatně přepsané. public static void main spouštěcí metodu máš uloženo ve vnořené třídě.
class Vozidlo {
...
}
public class PridejMetodu {
public static void main(String [] args){
...
}
}
Jelikož nevím jak jsi vytvořil projekt a cos pak prováděl dále a hlavně nepoužívám Eclipse tak můžu jenom hádat, ale myslím že nebudu daleko od pravdy.
Všechny tyhlety IDE jako Eclipse, Netbeans atd. používají nějaký buildovací systém, tj systém, který (nejenom) automatizuje proces zbuildování a spouštění aplikace. Velmi zjednodušeně řečeno když vytvoříš nový projekt v Eclipse (nebo jiném IDE) tak se zároveň vytvoří konfigurace pro ten buildovací systém, který dané IDE používá (např mnou používané Netbeans používá defaultně Apache Ant, Eclipse tuším defaultně používá nějaký přímo vlastní).
Tato konfigurace se vytvoří na základě informací, které ty jakožto uživatel zadáš při vytváření nového projektu. Takže když tam zadáš aby se vytvořila třída MojeTřída s metodou main, tak se taky zapíše do konfigurace, aby se pro spouštění aplikace používala tato třída s metodou main. Takže když pak stiskneš tlačítko Run, tak se IDE podívá do této konfigurace, podle ní buildne aplikaci (pokud je potřeba) a spustí příslušnou metodu main.
Pokud ale po vytvoření projektu si ty vytvoříš nějakou jinou třídu s metodou main (a tu starou odstraníš nebo třeba přejmenuješ), tak IDE obvykle najednou neví co má spouštět, protože to prostě nemá v konfiguraci. Takže ho musíš popostrčit způsobem jaký jsem popsal výše - ukázat mu co spustit. On si updatne konfiguraci a napříště už bude vědět.
To bylo první co mně napadlo, ale nemá, má to akorát špatně zformátované takže to tak jenom vypadá Jsem rád že nejsem sám kdo se nechal nachytat
Ok, má tam tu závorku ukončující třídu Vozidlo. V každém případě to má ale blbě. public static void main metoda není v public class. Tudíž nejde spustit. Stačí když to přepíše do verze jak jsem to předtím uvedl, přejmenuje zdrojový soubor na PridejMetodu.java a bude mu to fungovat.
Zobrazeno 8 zpráv z 8.