U bent hier: Home > Forum
9lives | internet

Populair: Diablo III | Hitman Absolution | Assassin's Creed 3
9Lives - rss - contact - nieuwsbrief - sitemap


9Lives - next generation gaming Log in of Registreer

Paswoord vergeten?

Ga terug   9lives - Games Forum > Tech Center > Programming & Gamedesign

Programming & Gamedesign - Alle vragen over Level Design, Modelling, Coding, Texturing, ...

Reageren
 
LinkBack Discussietools Discussie waarderen
Oud 9 februari 2012, 20:53   #1  
Satkan is offline Satkan
Satkan's schermafbeelding
Member
Geregistreerd: 14/12/11
Locatie: Hamme
Berichten: 157
JAVA beginnersprobleem

Hey mensen,

Sinds kort ben ik begonnen met het boek :
A brain friendly guide : Head first Java.
Nu begon ik met de eerste oefening: BeerSong.

Na heel de code te typen, sloeg ik alles op in een .java bestand.
Hierna typte ik in de "cmd" javac BeerSong,
alles werkte... ik kreeg een .CLASS file.

Daarna typte ik dan Java BeerSong.java
Toen kwam de fout : ... Could not find or load main class : ...
Na JAVA_HOME en CLASSPATH in te stellen in system vars,
kwam deze fout er nog eens op.
Toen probeerde ik nog eens, en toen launchte het.
Na de "cmd" te sluiten en opnieuw op te starten, lukte het niet meer.
En dus bleef diezelfde fout er telkens opnieuw opkomen.

Gezocht naar een correcte manier om CLASSPATH in te stellen,
zelfs de JDK geherinstaleerd.
Na die herinstalatie lukt het zelfs niet meer om van .java een .class bestand te bekomen.

error : Class names, 'BeerSong', are only accepted if annotation processing is explicitly requested.
1 error


In Eclipse voer ik dezelfde code in, en duw ik op run...
hier lukt alles zonder probleem, en krijg ik het gewenste resultaat.


Code (bewust op 1 lijn gezet, zodat het "makkelijk" leesbaar is.):
edit*

public class BeerSong {
public static void main (String[] args) {
int beerNum = 99;
String word = "bottles";

while (beerNum > 0) {

if (beerNum == 1) {
word = "bottle";
}

System.out.println(beerNum + " " + word + " of beer on the wall");
System.out.println(beerNum + " " + word + " of beer.");
System.out.println("Take one down.");
System.out.println("Pass it around");
beerNum = beerNum - 1;

if (beerNum > 0) {
System.out.println(beerNum + " " + word + " of beer on the wall");
} else {
System.out.println("No more bottles of beer on the wall");
}
}
}
}

Resultaat :

99 bottles of beer on the wall
99 bottles of beer.
Take one down.
Pass it around
98 bottles of beer on the wall
98 bottles of beer on the wall
...
Pass it around
No more bottles of beer on the wall


Iemand enige inbreng?

Laatst gewijzigd door Satkan; 9 februari 2012 om 21:23
Met citaat reageren
Oud 9 februari 2012, 21:04   #2 (permalink)  
Cyberkef is offline Cyberkef
Cyberkef's schermafbeelding
Administrator
Geregistreerd: 13/08/02
Locatie: Woumen.w-vl.be
iTrader: 2 (100%)
Berichten: 4.209
Weblogartikelen: 7
Men java is wat roestig, maar probeer es "public class Beersong {" ipv "public class a {", en daarna "java Beersong" (of "java Beersong.class").
Met citaat reageren
Oud 9 februari 2012, 21:12   #3 (permalink)  
Satkan is offline Satkan
Satkan's schermafbeelding
Member
Geregistreerd: 14/12/11
Locatie: Hamme
Berichten: 157
Ah juist, ik had al eens om uit te proberen BeerSong naar a veranderd.
Maakt geen verschil, want ik heb het met beide al geprobeerd.

Ik heb nog eens PATH, CLASSPATH en JAVA_HOME opnieuw ingetypt.

C:\Program Files\Java\jdk\bin
C:\Program Files\Java\jdk\lib
C:\Program Files\Java\jdk\

respectievelijk.
(De 1.7.0. etc. heb ik gedelete uit de naam van de jdk mapnaam.)


Ik snap zeker niet waarom het javac commando niet meer werkt...
voor de herinstalatie deed die het wel.

Dus ik zit vast aan
"error : Class names, 'BeerSong', are only accepted if annotation processing is explicitly requested.
1 error"

Ik ben al heel de tijd aan het zoeken hoe ik de
"Error could not find or load main class" error
wegkrijg, maar blijkbaar komen er alleen maar problemen bij.

Toch bedankt voor de reactie Cyberkef!

Laatst gewijzigd door Satkan; 9 februari 2012 om 21:20
Met citaat reageren
Oud 9 februari 2012, 21:37   #4 (permalink)  
forloRn_ is offline forloRn_
forloRn_'s schermafbeelding
Member
Geregistreerd: 23/11/03
Locatie: Hessel
Berichten: 1.367
Javac werkt wel want het geeft output.

Doe gewoon:

javac BeerSong.java
java BeerSong

Hoofdletters zijn belangrijk.
Met citaat reageren
Oud 9 februari 2012, 22:55   #5 (permalink)  
Chaos-Energy is offline Chaos-Energy Stuur een bericht via MSN naar Chaos-Energy Stuur een bericht via Skype™ naar Chaos-Energy
Chaos-Energy's schermafbeelding
Member
Geregistreerd:  6/07/07
Locatie: Schriek
iTrader: 1 (100%)
Berichten: 32
Citaat:
Oorspronkelijk geplaatst door forloRn_ Bekijk bericht
Javac werkt wel want het geeft output.

Doe gewoon:

javac BeerSong.java
java BeerSong

Hoofdletters zijn belangrijk.
Klopt maar zijn fout is dat hij zijn .java bestand probeert uit te voeren ipv zijn .class.

Dus ipv java BeerSong.java moet het java BeerSong zijn.

Laatst gewijzigd door Chaos-Energy; 9 februari 2012 om 22:56 Reden: typo
Met citaat reageren
Oud 12 februari 2012, 14:13   #6 (permalink)  
Satkan is offline Satkan
Satkan's schermafbeelding
Member
Geregistreerd: 14/12/11
Locatie: Hamme
Berichten: 157
Nee, ik had in het begin javac gebruikt op BeerSong.java,
wat dus BeerSong.class maakte...
daarna java BeerSong ingevoerd,
en dan kwam er altijd een andere foutmelding op,
maar nu kan ik niet eens meer
het .java bestand omzetten naar een .class.
Met citaat reageren
Oud 12 februari 2012, 19:23   #7 (permalink)  
RaZoR be is nu online RaZoR be Stuur een bericht via MSN naar RaZoR be
RaZoR be's schermafbeelding
Approved 9-lifer
Geregistreerd:  7/06/04
Locatie: Opoeteren
iTrader: 14 (100%)
Berichten: 7.483
kunt ge hier anders es de volledige output plakken.

dus wat em zegt als ge typt

javac BeerSong.java

en als ge typt na het eerste succesvol is.
java BeerSong
Met citaat reageren
Oud 13 februari 2012, 17:26   #8 (permalink)  
Satkan is offline Satkan
Satkan's schermafbeelding
Member
Geregistreerd: 14/12/11
Locatie: Hamme
Berichten: 157
Sorry voor de trage reacties,
ik ga nog eens proberen de jdk te herinstaleren vanaf 0.
Aangezien de code werkt in Eclipse ligt het waarschijnlijk wel aan dat.

Als ik niets vooruit raak zal ik de output hier zetten.
Met citaat reageren
Oud 13 februari 2012, 17:49   #9 (permalink)  
NeverwinterX is offline NeverwinterX Stuur een bericht via MSN naar NeverwinterX
NeverwinterX's schermafbeelding
Approved 9-lifer
Geregistreerd: 26/08/04
Locatie: Leuven
Berichten: 781
Citaat:
Oorspronkelijk geplaatst door Satkan Bekijk bericht
Sorry voor de trage reacties,
ik ga nog eens proberen de jdk te herinstaleren vanaf 0.
Aangezien de code werkt in Eclipse ligt het waarschijnlijk wel aan dat.

Als ik niets vooruit raak zal ik de output hier zetten.
Wat is dat voor averechtse redenering. In eclipse werkt het, dus het ligt niet aan de installatie. Je doet waarschijnlijk iets mis of je hebt die environment variabelen verknoeid.
Met citaat reageren
Oud 13 februari 2012, 18:13   #10 (permalink)  
Satkan is offline Satkan
Satkan's schermafbeelding
Member
Geregistreerd: 14/12/11
Locatie: Hamme
Berichten: 157
Ok mensen, het probleem is opgelost.
Het lag wel degelijk aan de JDK die foutief was ingesteld.

Ik heb dus nogmaals de JDK geherinstaleerd,
daarna had ik alles uit enviroment variables verwijderd (Path, classpath...).
Dan simpelweg eens 2 video's van thenewboston bekeken.
Het is handig als checklist,
en nu werkt alles zoals het moet.

Voor mensen die later met een soortgelijk probleem zitten :

Java Programming Tutorial - 1 - Installing the JDK - YouTube
Java Programming Tutorial - 2 - Running a Java Program - YouTube

Bedankt voor de reacties iedereen!
Met citaat reageren
Oud 13 februari 2012, 18:14   #11 (permalink)  
Satkan is offline Satkan
Satkan's schermafbeelding
Member
Geregistreerd: 14/12/11
Locatie: Hamme
Berichten: 157
Citaat:
Oorspronkelijk geplaatst door NeverwinterX Bekijk bericht
Wat is dat voor averechtse redenering. In eclipse werkt het, dus het ligt niet aan de installatie. Je doet waarschijnlijk iets mis of je hebt die environment variabelen verknoeid.
Ik had ze blijkbaar inderdaad verknoeid.
Met citaat reageren
Reageren


Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten)
 
Discussietools
Geef een waardering voor deze discussie
Geef een waardering voor deze discussie:

Regels voor berichten
Je mag geen nieuwe discussies starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

vB-code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit
Trackbacks are Aan
Pingbacks are Aan
Refbacks are Aan



Alle tijden zijn GMT +1. Het is nu 15:22.


Copyright © 2011 Telenet N.v. - Wedstrijdreglement - Algemene voorwaarden

Search Engine Optimization by vBSEO 3.6.0