Szkolenia programowania we Wrocławiu
Kurs Java Podstawy - rozszerzony

Pierwszy program

Nasz pierwszy program jaki napiszemy w języku Java to standardowo "Hello World". Powinniśmy w tym momencie omówić jak stworzyć odpowiedni plik. Otwórzmy notatnik i przepiszmy poniższy kod. Podkreślam słowo przepisz, ponieważ kopiując przykłady kompletnie niczego się nie nauczysz. Zastanawiałem się, czy nie wklejać tutaj obrazków z kodem, aby wam tego nie utrudnić i obronić przed lenistwem, ale jednak później kopiowanie będzie dozwolone.

Kod naszego programu:

public class Hello{
  public static void main(String[] args){
    System.out.print("Hello World");
  }
}

Przepisz go do nowego pliku notatnika i zapisz w dowolnym miejscu z rozszerzeniem .java, zamiast .txt. Nazwa pliku musi być koniecznie taka sama jak nazwa klasy czyli Hello.java uwzględniając wielkość liter!

To właśnie takie rozszerzenie mają pliki z kodem, które następnie będą kompilowane.

Omówmy ten przykład linia po linii.

1. public class Hello - jest to nic innego jak publiczna klasa o nazwie Hello.

Klasa to krótko mówiąc komórka informacji, zawiera ona różne dane - zmienne, metody(funkcje) a także inne obiekty. Jeśli na razie tego nie rozumiesz to się nie przejmuj.

2. public static void main(String[] args) - jest to metoda main, to od niej rozpoczyna się działanie programu i w niej wywołujemy inne metody, lub tworzymy obiekty za to odpowiedzialne. W nawiasie podane są argumenty w postaci tablicy Stringów (nie to nie kobieca bielizna). Później przekonamy się jak można to wykorzystać.

3. System.out.print("Hello World"); - omawiając wyświetl(print) napis podany jako argument("Hello World") przy użyciu strumienia wyjścia w biblioteki System. Istnieje także bliźniacza metoda println(string), która dodaje na końcu drukowanego tekstu znak nowej linii "\n" (i właśnie jej będziemy zazwyczaj używali).

Zwróć uwagę na to, że napis podajemy w Znakach cudzysłowu a instrukcję kończymy średnikiem, a również na to, że odpowiednie sekcje kodu - tzw bloki kodu - "akcentujemy" przy pomocy nawiasów klamrowych { }. Ich pominięcie sprawi, że program nie zadziała. W Javie popularniejszą konwencją umieszczania nawiasów jest tak jak w naszym przykładzie linia metody, a nie nowa linia, dzięki temu nie rozwlekamy kodu na wiele dodatkowych linii.

Schematycznie metody wywołujemy w następujący sposób:

<strong>nazwa_obiektu.nazwa_metody();</strong>

Ważne są tutaj kropka po obiekcie, nawiasy, które odróżniają metody od zmiennych i w których podajemy argumenty(o czym będzie w dalszych rozdziałach) oraz średnik na końcu.

Uruchom program:

Najpierw uruchom konsolę (cmd), i przejdź do odpowiedniego folderu. Poruszamy się przy pomocy komend:

  • d: (lub c:  ; e:  itd) przechodzi na odpowiedni dysk
  • cd nazwa_folderu - przechodzi do odpowiedniego katalogu
  • cd.. - przechodzi do katalogu wyższego poziomu

... no i to powinno wystarczyć.

Gdy jesteśmy w odpowiednim katalogu (w moim przypadku d:/java/ musimy skompilować przy użyciu znanej nam już komendy javac. Robimy to wpisując:

javac nazwa_klasy.java

Nie możemy zapomnieć o końcówce .java!

W wyniku tego działania w tym samym folderze powinien ukazać się nowy plik o rozszerzeniu .class o takiej samej nazwie jak nasz utworzony plik. Zawiera on bytecode, który może zostać wykonany przez wirtualną maszynę Javy.

Uruchommy w końcu nasz program wpisując:

java nazwa_klasy

w tym przypadku nie dopisujemy końcówki .class.

W wyniku naszych działań powinniśmy otrzymać coś podobnego:

Jak widzimy nasz program wydrukował tekst Hello World, czyli dokładnie to czego się spodziewaliśmy.

Zadania do samodzielnego wykonania:

1.1. Napisz program, który wyświetli w 3 kolejnych liniach trzy imiona: Ania, Bartek, Kasia.

Rozwiązanie.

<- Poprzednia LekcjaNastępna Lekcja ->

Komentarze

Komentarze zamknięte. Zapraszamy do grupy na Facebooku
Agent 134

Ja uruchamiam wiersz polecenia (cmd) to komputer nie rozpoznaje polecenia javac. Jak to rozwiązać???

Slawek

Powinieneś najpierw przeczytać to:
http://javastart.pl/wprowadzenie/instalacja-jdk/
:)

Piotrek

Ja mam error
Hello.java:1: error:class, interface, or enum expected
javac Hello.java
^
1 error

i nie mam pojęcia o co chodzi

Ech

A nie lepiej pobrać sobie Eclipse albo inny program tego typu?

Sławek K.

Mam Eclipse, mam JDK i jest all. Niby java i javac jest w CMD, ale właśnie tego nie mam.

dytryh

Mam to samo

Alex

to zostało zrobione, ale jak kolejny raz uruchomiłem to znowu musiałem wykonać tą czynność. Czy za każdym razem będę musiał ją wykonywać?

Gaijin

Upewnij sie ze zrobiles to http://www.itcsolutions.eu/2010/11/29/set-environment-variables-in-windows-7-for-java/

xnikixx

było w lekcji instalacja javy, zobacz tam screencast

Kamka

Albo wg ww przykładu:
public class Imiona{

public static void main(String[] args){

System.out.println();
System.out.print("Ania");
System.out.println();
System.out.print("Bartek");
System.out.println();
System.out.print("Kasia");
System.out.println();
}
}

Damian

Ale czemu polecenie System.out.print zapisujesz w osobnej linii? A nie:
System.out.println("Kasia");
?

Piszu

System.out.println("Ania \nKasia \nBartek");

AdamBartos

chyba bardziej
System.out.print(„Ania \nKasia \nBartek”);
:PP nie stawiamy na końcu In, skoro w treści dodajemy \n

Marcin

Ciekawe czy Piszu jak i Adam sprawdzili to co napisali, obawiam się, że nie!
Ja zrobiłem to tak (od dnia dzisiejszego czytam ten kurs więc proszę nie śmiać się a wskazać ewentualne błędy):

public class Imiona{
public static void main(String[] args){
System.out.println("Ania");
System.out.println("Bartek");
System.out.print("Kasia");
}
}

Adam

ja po prostu zrobiłem metodą "\n"

Tomek

public class JavaApplication17 {
public static void main(String[] args) {
System.out.println("Ania\nBartek\nKasia");
}

}

xnikixx

łatwiej zrobić tak:
public class Imiona{
public static void main(String[] args){
System.out.println("Ania");
System.out.println("Bartek");
System.out.println("Kasia");
}
}
po prostu przed każdym imieniem dac System.out.println zamiast System.out.print i dodatkowe System.out.println();

mate11q

Super strona !! Polecam wszystkim początkującym. Pozdrawiam.

Marcin

a nie prościej :
public class Hello3{
public static void main (String[] args){
System.out.print("Ania\nBartek\nKasia");
}
}
??

Ipek

Ponieważ w kursie nie były omawiane znaki nowej lini, więc Twoj kod wprowadza tylko zamieszania dla kogoś kto jest nowy w programowaniu, a dla takich osób chyba jest ten kurs :-)

Ktos

Istnieje także bliźniacza metoda println(string), która dodaje na końcu drukowanego tekstu znak nowej linii „\n” (i właśnie jej będziemy zazwyczaj używali).

mi się wydaje że były...

Marcin

dobra nie zauważyłem rozwiązania do zadania :)

tom

Dziala w koncu :) najpierw scieszke zla w path wpisywalem bo do jre a nie a ma byc do jdk, jak sie uporalem z tym i napisalem cos w notatniku to javac nie widzialo pliku a to dlatego ze mimo ze wpisalem nazwe z rozszerzeniem java to jak sie blizej przyjrzec plik byl zapisany jako textowy i mial rozrzerzenie
java.txt no ale uporalem sie z tym :)

Piotr



Slawek:

Komendę „java Hello” wywołujesz albo w złym folderze, albo zrobiłeś literówkę w nazwie klasy, lub nie uwzględniłeś wielkości liter.
Nazwa klasy i nazwa pliku muszą być dokładnie takie same.


No właśnie że ani nie robię literówki ani nie jestem w niewłaściwym katalogu. Wszystko jest OK i dalej wychodzi mi takie coś jak wyżej. Dopiero zaczynam programować i Kurs wydaje mi się ciekawy ale początki są zawsze koszmarne...
Piotr

Robię tak jak pisze w Kursie i wychodzi mi taka sieczka:

Exception in thread "main" java.lang.NoClassDefFoundError: Hello
Caused by: java.lang.ClassNotFoundException: Hello
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: Hello. Program will exit.

Pomóżcie, dobrzy ludzie!

Slawek

Komendę "java Hello" wywołujesz albo w złym folderze, albo zrobiłeś literówkę w nazwie klasy, lub nie uwzględniłeś wielkości liter.
Nazwa klasy i nazwa pliku muszą być dokładnie takie same.

lyda

niestety z przykrością muszę również stwierdzić ze u mnie pojawia się dokładnie ten sam błąd. Jedyna różnica była w wersji zainstalowanej javy... czy to może być problemem ?!

Witek

Witam
Jak będziesz ustawiał zmienną środowiskową to postępuj tak jak napisał Sławek tylko pamiętaj, że w polu Wartość zmiennej musisz podać pełną ścieżkę , gdzie znajduje się katalog bin. U mnie ścieżka do katalogi bin w jdk jest następująca: C:\jdk1.6.0_21\bin.
Jak już ustawisz zmienną systemową to sprawdź czy działa zgodnie z tym co napisał Sławek.

U mnie wygląda tak:
Założyłem sobie katalog na dysku D: o nazwie np.: Cw_Java, w którym mam wszystkie ćwiczenia.
Uruchomienie programu.

W konsoli przechodzę na dysk D , następnie do katalogu Cw_Java, gdzie mam swoje programy, dalej w konsoli wpisuję np.: javac Imiona.java, gdy się skompiluje to następnie wpisuje Imiona.java

Lukas

Hey.

Ja rowniez mialem podobny problem. Ale poszperalem troche i udalo mi sie rozwiazac problem. Mianowicie problem jest w kompatybilnosci javy i jdk. Na stan kiedy to pisze, to mam jave jdk8.0 a jave 7.x.

Rozwiazaniem jest, ze sciagniesz sobie jdk.7

Pozdrawiam

celius

Pewnie robisz ten sam błąd co ja robiłem i przez ponad godzinę nie wiedziałem co jest grane. Ale oczywiście trzeba czytać dokładnie :)

Ja aby uruchomić wpisywałem java Hello.class , a w kursie pisze jak byk aby nie dodawać rozszerzenia class więc powinno to wyglądać tak: java Hello

Lukas

Hey.

Sprawdz czy wersje javy i jdk sa identyczne.

Juliusz



Kamka:

Albo wg ww przykładu:
public class Imiona{
public static void main(String[] args){
System.out.println();
System.out.print(„Ania”);
System.out.println();
System.out.print(„Bartek”);
System.out.println();
System.out.print(„Kasia”);
System.out.println();
}
}
czy nie powinno być raczej:
public class Imiona{
public static void main(String[] args) {
System.out.println("Ania");
System.out.println("Bartek");
System.out.println("Kasia");
}
}
w zadaniu nie było napisane że mają być oddzielone tylko w nowych liniach
dobry_czlowiek

rozwiązanie problemu Exception in thread „main” java.lang.NoClassDefFoundError: Hello

w ustawieniach zmiennych systemowych (http://javastart.pl/wprowadzenie/instalacja-jdk/) usuwamy zmienną CLASSPATH odnoszącą się do javy. należy się jeszcze upewnić, że nie pomyliliśmy wcześniej zmiennej Path użytkownika (tej nie ruszamy) z systemową (tam dodajemy ścieżkę wg wytycznych Sławka)

u mnie pomogło :)

gandy

Dzięki - u mnie również pomogło w podobnej sytuacji.

slime3000fly

a u mnie czegoś takiego nie ma i nadal mi nie odczytuje.

MrWilczku

Nie no, mam 12 lat i wszystko rozumiem. Jestem dziwna? O_O

Kamiler65

Czy cały kod trzeba przepisać idealnie rozmieszczenie czy można "wyjustować"?

Kamiler65

Czyli np. tak

public class Hello{
public static void main(String[] args){
System.out.print("Hello World");
}
}


czy można tak?

public class Hello{
public static void main(String[] args){
System.out.print("Hello World"); }
}
}

Slawek

Tak, wcięcia nie mają znaczenia. Możesz nawet wszystko zapisać w jednej linii. Chodzi po prostu o czytelność kodu.

Julian J.

A ja mam jedno pytanie dotyczące samego fragmentu "String[] args".

Byłbym szczęśliwy jakby mi ktoś napisał, albo podał linka do miejsca co to oznacza. Bo jak na razie to wciąż tak piszę, "bo tak było w kursie".

PS Fajna nowa skórka

Slawek

Jest to tablica argumentów, które możemy przekazać przy wywołaniu programu.
Skórka zostaje niestety stara, teraz zmieniłem tylko na widescreena - trochę testowałem, bo wysypała się po aktualizacji, a niestety nie mogę znaleźć nic równie użytecznego, gdzie wszystko działałoby jak należy.

Kamiler65

Dziękuje za odpowiedź
Ps:Super stronka dla nowych będę ją polecał znajomym

Kamiler65

U mnie przy otworzeniu pokazuje się

EXCEPTION IN THERAD "main" java.lang.NoClassDefFoundError: Hello/java

Kamiler65

Przepraszam dopisałem nie potrzebnie .java

Mariusz

Nie wiem co jest nie tak. Java i javac działa w konsoli ok. Jak wpisuje cd java to wychodzi mi komunikat
" Nazwa katalogu jest nieprawidłowa"

Witek

Aby przejść do katalogu jawy to musisz najpierw przejść na ten dysk, gdzie masz zainstalowaną javę, u mnie jest tak: przechodzę na dysk c:\ cd jdk1.6.0_26 wciskam enter, a następnie dir i mam otwarty katalog

Mariusz

Dzieki za pomoc,nigdy nie pracowałem w konsoli , już ogarnąłem o co chodzi. Mam jednak inny problem. Przy kompilacji wychodzi mi błąd. Od początku: stworzyłem plik Hello.java i zapisałem w pliku bin. Po kompilacji powinienem otrzymać drugi plik .class. Dla pewności skopiowałem przykład, więc błędów literówek nie ma. Może ktoś mi pomóc co jest powodem błędu? Java i javac chodzi ok.

Slawek

bez wypisania treści błędu z konsoli raczej będzie ciężko.

Witek

Witam
Napisałeś „ stworzyłem plik Hello.java i zapisałem w pliku bin.”
Nie zapisuj programów w pliku „\bin” , do wykonywania ćw. przygotuj sobie jakiś inny katalog , w którym będziesz przechowywał swoje programy, np.: D:\ Cw_Jawa\ jakieś tak programy z ćw. . Wówczas przechodzisz sobie na dysk D do katalogu np.: Cw_Java i możesz sobie kompilować i uruchamiać swoje programy bez problemów i bez obaw, że możesz coś usunąć z katalogu „\bin”.

Mariusz

Czesc Sławek. Już mi działa ok. Robiłem błąd, a wystarczyło tylko otworzyć konsole z poziomu administratora. Teraz wszystko śmiga super.

Mariusz

Dzięki za radę, faktycznie,taki zapis jest bezpieczniejszy i nie wprowadza chaosu.

Kuba

Mam problem, otwieram folder docelowy i wpisuje javac Hello.java po czym jest kilku sekundowy zastoj i pojawia sie komenda ktora przed chwila wpisalem, uzywam visty, czy to jest powodem?

Kuba

dodam ze komendy sa na pewno dobrze wpisane, poniewaz po kilku probach po prostu skopiowalem Twoj kod.

Mariusz

Nie wiem jak jest w viscie, ja mam win7 i problem zniknął, gdy otwieram konsole z poziomu administratora.

Devan

a ja mam problem, zrobilem wszystko jak kazal

public class Hello{
public static void main(String[] args){
System.out.print("Hello World");
}
}

ale jak wpisuje w cmd ta komende javac Hello.java to mam error

C:\Users\Pawel>javac Hello.java
Hello.java:1: error: '{' expected
public class Hello
^
1 error

Witek

Mam podobnie jak Kolega wyżej z tym że "^" pojawia się pod przerwą między class a "{" :(

domyos

Cześć. Mam problem w CMD. Na laptopie mam tylko jeden dysk (nie dzieliłem go na mniejsze partycje). Więc wpisując w CMD:
1. c: - jest ok
2. cd java - wyskakujeksuje błąd o treści:
"system nie może znaleść określonej ścieżki"
Przez co nie mogę wykonać kolejnego kroku.... Czy ten błąd wynika z tego, że nie mam zrobionej partycji dysku?

Zgodnie z instrukcją w CMD działa mi "java" i "javac"

Piotrek

U mnie nie wyskakuje Hello World,tylko otwiera się folder z java ten który dzięki Tobie zrobiłem

Witek

Witam
Jak masz założony katalog do ćw. to musisz do niego wejść i dopiero wtedy możesz uruchomić program. Pamiętaj wielkość liter ma znaczenie
U mnie np.:
D:\ cd nazwa katalogu(Cw_Java) i enter
Na konsoli mam teraz
D:\Cw_Java > javac Tablica1.java i enter
Następnie
D:\Cw_Java > java Tablica1

domyos

Robiłem tak... przesyłam zrzut ekranu -> http://imageshack.us/photo/my-images/705/problemzjava.gif/

(Java i javac w cmd działają)

Slawek

W folderze Łukasz nie istnieje pod folder java, do którego próbujesz wejść.
instrukcja cd powoduje wejście do innego folderu, czyli cd nazwa_folderu. Pliki .java kompilujemy znajdując się w odpowiednim folderze w sposób javac nazwaPliku.java, a następnie go uruchamiamy java nazwaPliku (bez .java na końcu).

U Ciebie na zrzucie widać, że pliki przechowujesz sobie w Program Files\Java\CW_java (od razu odradzam, zrób sobie taki folder w przykładowo właśnie Documents and Settings\Łukasz\java (od razu uprzedzam, że nie polecam polskich znaków w nazwach użytkownika - przy integracji środowiska pod programowanie w Androidzie są z tym problemy).

Piotrek

U mnie java nazwaPliku nie wchodzi
cd java
javac>java Hello.java -tu wyskakuje notatnik hello - Notatnik
i jak wpisuje java>java Hello to jest taki tekst
Nazwa 'Hello' nie jest rozpoznawana jako polecenie wewnętrzne lub zewnętrzne,
program wykonywalny lub plik wsadowy.
I nie wiem co jest grane.Proszę o pomoc...

Piotrek

jak daje >>przed java>java Hello,to mam takie coś

D:\Documents and Settings\ffffff>java Hello
Exception in thread "main" java.lang.NoClassDefFoundError: Hello
Caused by: java.lang.ClassNotFoundException: Hello
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: Hello. Program will exit.

Witek

Witam
Tak jak napisał Sławek musisz wejść do katalogu ze swoimi ćw.(musisz w nim być) to wtedy wpisujesz
- javac Hello.java i wciskasz enter potem wpisujesz
- java Hello
powinien uruchomić się twój program.
Zwróć czy nie zrobiłeś gdzieś literówki

Bartek

Witam, po wpisaniu komendy javac Hello.java wyskakuje ten komunikat:

Nazwa ‘javac’ nie jest rozpoznawana jako polecenie wewnętrzne lub zewnętrzne,
program wykonywalny lub plik wsadowy.

Co może powodować ten błąd?

Slawek

Zacznij kurs od początku to się dowiesz.

Drelka

javac Hello.java
file not found
co mogłem zrobić źle? zapisałem dobrze, folder ok.. nie mam pojęcia

Drelka

sprawdzilem funkcją "dir" zawastosc katalogu, plik ma rozszerzenie txt, cala nazwa to Hello.java.txt
zapisalem ponownie juz z menu notatnika i jest git
piszę gdyby ktoś miał ten sam problem, szczerze to po google zacząłem już szukać o o może chodzić, na takiej "głupocie traci się sporo czasu" :)
pozdrawiam

Manio

Zrobiłem wszystko zgodznie z instrukcją:
Hello.java:

public class Hello{
public static void main(String[] args){
System.out.print("Hello World");
}
}

Gdy robie java Hello pisze:


Exception in thread "main" java.lang.UnsupportedClassVersionError: Hello : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: Hello. Program will exit.

Mam wersję sdk 1.7.0 nie wiem czy to jakiś błąd wersji czy czego ale nie było go powyżej.

Slawek

wpisz w konsoli najpierw
javac -version
a później
java - version
i napisz co się pokazuje. Czy miałeś wcześniej zainstalowaną starszą wersję, np 6, a później doinstalowałeś 7 ?

kamloko1

Hej zrobilem tak jak mówiłes i faktycznie wyskakuja mi dwie różne wersje przy poleceniu javac -version wyskakuje mi javac 1.7.0_07 a przy poleceniu java -version wyskakuje mi java version "1.6.0_27" . Co Zrobić??

lolo

Zainstaluj nową JRE:
http://www.oracle.com/technetwork/java/javase/downloads/index.html

misiek

A ja mam pytanie, zmieniłem sobie tekst z "Hello World" Na "Ja rządzę Światem!"
i po uruchomieniu programu mam tekst bez polskich znaków.

Ja rz╣dzŕ!
îwiatem!

Co jest tego przyczyną?

Pozdrawiam

Daywalker

w konsoli Java wpisz : chcp 1250
A jak to nic nie da to wejdź prawym clickiem w ikonkę w lewym górnym rogu konsoli- właściwości - czcionka- i zmień na "Lucida console"

oojava

O co chodzi z tym Gdy jesteśmy w odpowiednim katalogu (w moim przypadku d:/java/ musimy skompilować przy użyciu znanej nam już komendy javac. Robimy to wpisując:

javac nazwa_klasy.java

?

Witek

Odpowiedni katalog to miejsce w którym trzymasz swoje aplikacje np.: ćw. z tego kursu.

RedstoneMaster

Zrobiłem wszystko jak należy. Gdy wpisuje w wierszu polecenia "javac Hello.java"
w folderze z "Hello.java" tworzy się plik "Hello.class" a w wierszu polecenia nic się nie dzieje. Screen: http://img703.imageshack.us/img703/995/wierszpolecenia20110924.png

Slawek

To teraz przejrzyj jeszcze raz lekcję, zobacz na mój screen i powiedz, czy tak ma być, czy nie ...

RedstoneMaster

Dzięki, w życiu bym się nie domyślił.

Witek

Tak na marginesie to na pulpicie trzymaj tylko skróty do programów. I zrób to jeszcze raz tak jak napisał Sławek.

Kamil

Witam otóż nie moge zmienić folderu w konsoli to znaczy po lewej stronie piszę H:\Documents and Settings\Kamil> a chciałbym żeby pisało samo H: jednakże to niemożliwe bo próbowałem z komendą H: i Cd i jak wpisuje cd Java to pisze że nie może znaleść określonej ścieżki.

Kefiru

Nie dziala z cd H:\ bo musisz sprecyzowac katalog z plikiem, czyli cd (sciezka do pliku). Zeby ci wyswietlalo samo 'H:', czy co tam sobie zyczysz, mozesz uzyc komendy 'prompt'.

Kefiru

Czyli np.:
cd C:\Documents and Settings\Kamil\Moje Dokumenty\Java

I wtedy jestes w tym katalogu.
Teraz mozesz sobie ustawic co ci bedzie wyswietlalo niezaleznie od lokalizacji:

prompt H:
czy
prompt Java:

Witek

Witam
Jak masz np.:
C: \Documents and Settings\Wiciu>
I chcę przejść na dysk np: D w którym jest katalog z przykładowymi ćw.
to w konsoli po znaku zachęty piszesz:
Np.:
C: \Documents and Settings\Wiciu> d: i enter
Wtedy masz np:
D:\>
A jak chcesz wejść do katalogu ze swoimi ćw.
To musisz wpisać np.:
D:\> cd Cw_Java i enter dalej
D:\> Cw_Java> i tu są przykładowe ćw.

Pamiętaj o wielość liter.
Powodzenia

Kamil

Własnie tylko mi to nie pomaga ponieważ jak piszę H: to wciąż zostaje po prawej stronie H:\Documents and Settings\Kamil>

Slawek

Przecież w instrukcji masz wyraźnie napisane jak się poruszać między folderami, naprawdę tak ciężko jest to zrobić?

Kefiru

cd H:\

ze slashem ;)

Alert

wpisuje w wierszu poleceń
cd java
i nic
System nie może odnaleźć określonej ścieżki
mam zainstalowaną wersje jdk1.7.0

Kefiru

Bo musisz podac pelna sciezke do pliku.

adambuszlelen

Wszystko OK ale po wpisaniu "java Hello" wyskakuje :
Could not open C:\Program Files\Java\jre7\lib\i386\jvm.cfg

Jave mam na D:\Java
Cwiczenia mam w D:\Java\java_cw

Steve

Po komendzie
javac Hello.java
tworzy sie w tym samym folderze plik Hello.class
jednak po wstukaniu komendy
java Hello
wywala błąd:
error: Could not find or load main class Hello

polecenia javac i java działaja w konsoli.

Steve

Dodałem folder ze skompilowanymi programami do classpatha i zaczelo dzialac :) Lecę dalej z kursem.

Piotr

Wpisałem wszystko prawie dobrze pokazało mi error i go poprawiłem po ponownym włączeniu programu chwile myśli i to wszystko. Nic nie pokazuje.
kopiowałem nawet ze stronki . wszystko zrobione według wskazówek.
chwile myśli i nic.
Hello.class się zrobiło jak by co

LordSarius

Cześć

Gdy wpisuje javac Hello.java to nic sie nie dzieje przechodzi poprosty do nastepnej linijki nie wiem co zrobić.

LordSarius

dobra przyznaje jestem debilem nie doczytałem co zrobić po skimpilowaniu

Rafał

Taka mała uwaga. Skoro poprzednio wyjaśniałeś jak zapisuje się klasy i metody to:
nazwa_obiektu.nazwa_metody(); jest dość mylące dla początkującego, powinieneś zostać przy: nazwaObiektu.nazwaMetody(); ... może przesadzam ale ostatnio gnębiłem magento i zapis z '_' oznacza ścieżkę gdzie dany blok jest umieszczony ... a reszta nazewnictwa w zasadzie się pokrywa..

Eagle

Cześć, mam problem kiedy próbuje odczytać mój mały programik to wyskakuje mi invalid character error w necie wyczytałem, że trzeba zmienić kodowanie na UTF 32 którego niema w super viscie (przynajmniej mojej !) wiecie może jak zmienić to kodowanie

Michał

Przeczytałem to:
http://pl.wikipedia.org/wiki/UTF-32/UCS-4
I wyszło mi , że UTF 32 i Unicode to to samo...:D (??)

Piotr

zrobiłem wszystko jak w zdaniu, plik umiescilem na d:\Java\Hello.java ,jaki pisałeś.
otwieram CMD wchodze do d:\Java\ wpisuje javac Hello.java i wyskakuje mi

D:\Java>javac Hello.java
Nazwa 'javac' nie jest rozpoznawana jako polecenie wewnętrzne lub zewnętrzne,
program wykonywalny lub plik wsadowy.

Mary

Czesc! Nie wiem co robic jak zapisuje w Notatniku tekst i chce go zapisac nie moge zmienic save as type na java bo jest tylko *.txt lub All Files wiec niewiem jak to zmienic:( mam windows vista Prosze o help? wersja java development kid 1.70.

xDestiXx

zmieniasz typ na All Files i potem tam gdzie wpisujesz nazwę usuwasz rozszerzenie txt i wpisujesz ręcznie .java

Witek

Witam
Gdybyś miał nadal z tym problem to wejdź do „Opcje Folderów” następnie do zakładki
„ Widok „ i zobacz czy masz usunięte zostało zaznaczenie opcji „ Ukryj rozszerzenia znanych typów plików” jeśli nie to usuń to zaznaczenie.

Sławek K.

Cześć. Niby all OK robię z tym wpisywaniem w konsoli C: itp., lecz u mnie jak wpiszę c:, to zamiast C:\ > nadal jest C:\Users\eddy>
WTF?

Witek

Witam
Jak chcesz przejść z C:\Users\eddy>
na „ C:\ „ to musisz użyć komendy ” cd.. „ po cd są dwie kropki i enter

Jak chcę przejść np.: do katalogu głównego czyli „C:\” to po znaku zachęty wpisuje:

C:\Documents and Settings\Wiciu> cd.. i enter
Dalej mam
C:\Documents and Settings> cd.. i enter
I jestem już na dysku C:\>
Mam nadzieje, że przyda się to.
Pozdrawiam

Ard

Witam... mam problem... znowu... wpisuje javac hello.java i niby znajduje tylko pisze: error: Class names, "Hello" ar only accepted if processing is explicity requested

Co mam zrobić ? błąd w kodzie ? czy coś innego ? błąd w kodzie raczej nie bo jak tak pisało to po prostu skopiowałem kod ze strony bo myślałem że coś źle przepisałem.

SSernik

Hej, a nie musisz przypadkiem mieć nazwy pliku takiej samej jak klasy? Z uwzględnieniem małych i dużych liter?

Dawid

Witam,
ja mam problem, który był już poruszany powyżej, ale w moim przypadku wciąż jest nierozwiązany. Mianowicie otrzymuję coś takiego:
Exception in thread "main" java.lang.UnsupportedClassVersionError: Hello : Unsup
ported major.minor version 51.0


Zrobiłem to co pisałeś i oto moje wyniki:

javac 1.7.0_01

java version "1.6.0_24"
Java(TM) SE Runtime Enviroment (build 1.6.0_24-b07
Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02 mixed mode)

Czy to ma związek z tym, że używam glassfish3?

Pierwsze strony kursu zachęcają bardzo do dalszej pracy. Podoba mi się obrazowanie przykładów w stylu rodzina w samochodzie- to dobre podejście do tematu.
Pozdrawiam.

Slawek

Po pierwsze o czymś takim jak glassfish na tym etapie nawet nie powinieneś był słyszeć, żeby sobie nie mącić w głowie, to jest serwer do aplikacji J2EE, a do tego daleka droga.
Błąd jest spowodowany tym, że próbujesz uruchomić aplikację przy pomocy JRE w wersji niższej niż Twój kompilator. Albo zainstaluj JRE w wersji 7 i zaktualizuj PATH o ile zajdzie taka potrzeba, albo zrób downgreade JDK do 6.

Dawid

Dzięki za odpowiedź. Wrzuciłem komunikaty w google i stąd pytanie o glassfish3 - nieważne już.

Spróbuję zrobić to o czym pisałeś, bo nie ukrywam żeby nie tracić czasu zainstalowałem sobie Eclipse i poleciałem z tematem do przodu. Natomiast rada:

"Niemniej jednak, nie powinno się od niego zaczynać przygody z programowaniem, nauczy nas to lenistwa, niedbałości o kod, a przede wszystkim ciężko nam będzie zrozumieć komunikację pomiędzy klasami i cały paradygmat obiektowy."

jest pewnie cenna. Mam nadzieję, że uda się to o czym piszesz wyżej.

Jeszcze raz dzięki za odpowiedź

Dawid

Zrobiłem jak powiedziałeś. Zainstalowałem JRE v.7 i dzięki temu przywitałem świat.

Dzięki za pomoc.
Pozdrawiam,
Dawid.

Jędrzej

Siema...
Napisałem program który robi... tak... program...
download

TheMechanos

"Podaj na co mam popatrzeć :" o co chodzi ?

Jędrzej

Javadoc'owe @see

xDestiXx

Miałem trochę problemów z tym (głównie przez znaki :P ) gdyż programuje jak na razie w pascalu jednak sobie poradziłem, istnieje jednak inny problem, wszystko niby działa jednak gdy wpisuje javac Hello.java to konsola zostawia linijke pusta i niżej wyświetla D:\java>. Patrząc po screenie tutaj w tej pustej linijce powinno się wyświetlić Hello World jednak się nie wyświetla, po skopiowaniu kodu z poradnika również się nic nie dzieje :/ Co może być tego przyczyną ?

Witek

Witam
Przeczytaj uważnie komentarze, które są zamieszczone powyżej tam powinieneś znaleźć rozwiązanie problemu, a sprawdź czy w kodzie, który chcesz uruchomić czy jest wpisana ta linijka kodu, odpowiada ona za wyświetlenie treści na konsoli
System.out.println("Wyświetla teksu na konsoli ");
Jeżeli jej nie ma to ją dopisz i uruchom.

xDestiXx

po wielu próbach skopiowałem tekst i nie działa nadal, otwieranie z poziomu admina też nic nie dało, poprostu robi pustą linijkę i przeskakuje do polecenia wcześniej wpisanego. Mam windows 7 64 SP1

Witek

Też tam wszedłem i to samo nie wiedziałem na co mam popatrzeć ??

Matiko

u mnie komenda Java i javac działają poprawnie. poprawnie tworzy się plik class, ale gdy go próbuję otworzyć to niemoże znaleźć klasy (patrzałem 3 razy jest identycznie jak tu) pomocy!

Witek

Witam
Nie bardzo wiem co chcesz zrobić, jeśli chcesz zobaczyć kod źródłowy to otwieraj plik z rozszerzeniem .java , możesz otworzyć lub podejrzeć go notatniku o ile z tego korzystasz, ja do tego celu używam „ Windows Commandera”, a jeśli chodzi o pliki z rozszerzeniem .class zawierają one bytecode, który nie jest kodem wykonywalnym, może on być wykonany przez JVM , a jak go otworzysz to zobaczysz jakieś dziwne kwadraciki i nie tylko.

Swirus

Wszystko do tego momentu robię tak jak w tutorialu, jednak gdy wpisuje javac - pojawia się błąd... "Nazwa 'javac' nie jest rozpoznawalna..." - Czym może to być spowodowane? Wracałem na początek tutoriala ale nic nie pomaga.

Witek

Witam
Przeczytaj uważnie wszystkie posty były już omawiane podobne problemy

majerer

Warto ustawić w zmiennej path ścieżkę do bin w jdk, ale nie na końcu, lecz na początku zmiennej.

Matiko

Robiłem kropka-w-kropkę to co pisało... Może to dlatego, że mam Windowsa 7 (Ultimate), bo nie wiem czy to współpracuje z moim Win'em

Witek

Witam
Ja niestety nie korzystam z Wina’7 tylko z XP’ ka, więc trudno mi coś konkretnego Ci doradzić dlaczego tak się dzieje. Może ktoś kto korzysta z tego samego Windowsa będzie mógł coś Ci doradzić.

xcam

to trzeba isc do tego folderu z tym plikiem.java?

Molek

Po wpisaniu komendy set path(...), javac działa jednorazowo. Po zrestartowaniu wiersza poleceń, muszę wklepywać komendę od nowa, jak to rozwiązać ?.

Witek

Witam
Aby powtórzyć ostatnią komendę wpisaną na konsoli np.: java –version
Wystarczy wcisnąć „ F3 ” i nie musisz ponownie jej wpisywać. Mam nadzieję, że oto Ci chodziło.

Molek

Źle zamieniałem wartość patha, już to rozwiązałem, ale dziękuje za odpowiedź.

Andrea

Witam
U mnie w pewnym momencie pojawił się inny problem, którego nie potrafię rozwiązać. Na początku wszystko pięknie funkcjonowało dokładnie tak jak jest to tu napisane. W pewnym momencie jednak coś się zepsuło.
Jak na przykład wpisuje komendę:
javac Hello.java kompiluje mi ja bez błędów do Hello.class
ale jak wpisuje później java Hello to wyskakuje mi tekst typu:
nie można znaleźć lub załadować klasę publiczna Hello
Odinstalowanie i nowa instalacja pakietu jdk nic nie dało..

Andrea

Ok. rozwiązałem.
Dodałem do CLASSPATH ścieżkę do katalogu z plikami.
Ciekawe tylko czemu wcześniej mi działało bez takich zabiegów..

Mariusz

Witam Wszystkich.
Czas temu zacząłem ten kurs i musiałem zrobić przerwę.
Teraz rozpocząłem na nowo, jak na ten czas idzie mi ok.
Mam nadzieję, że Sławek nadal czuwa nad naszą edukacją.
Pozdro

Mariusz

A i tak na marginesie, popieram hasło z górnego rogu strony.

Filip

Witam!
Ja mam następujący problem! W konsoli po wpisaniu c: jest chyba wszstko dobrze!
Niestety kiedy wpisuję java wyskakuje mi "sysyem nie może odnaleźć określonej
ścieżki"

Pozdrawiam

Witek

Witam
Jak chcesz uruchomić swój program to musisz znajdować się w tym samym katalogu, w którym on jest umieszczony. Jak to zrobić jest napisane kilka postów powyżej musisz je dokładnie przeczytać.
Pozdrawiam.

Michak

robię tak jak na kursie ale po wpisywaniu javac.Hello.java
wyskakuje mi to:
javac: file not found: Hello.java
Usage: javac
use -help for a list of possible options

Co ja mam z tym zrobić?
Proszę o szybką odpowiedz.
z góry dzieki

Andrzej

Witam, ponawiam pytanie Piotra sprzed 3 miesięcy, ponieważ nie doszukałem się rzeczowej odpowiedzi, a jedynie polecenia obejścia problemu dookoła innym kodem.

Otóż po dokładnym wpisywaniu kodu wyskoczyło właśnie coś takiego, a w folderze nie powstał żaden nowy plik.

http://pokazywarka.pl/x9edg8/

Jak ktoś potrafi pomóc, to proszę o proste wytłumaczenie, bo jestem kompletnie zielony ;)

Andrzej

Edit: problemem okazało się to, że nie przeczytalem dobrze samego poczatku instrukcji, tzn. nie przepisalem tresci kodu do nowego notatnika przed zapisaniem go jako .java i dlatego pozniej zostalem tylko z plikiem java i txt, gdzie plik tekstowy nic nie wazyl bo byl pusty.

Marcel

Witam serdecznie. Już na początku napotkałem problem. Otóż po wpisaniu komendy "Hello.java" w cmd wyskakuje mi plik notatnika, a nie plik dosowski. Czy ktoś może mi pomóc? Z góry dziękuję. Marcel

E30Tomas

Najpierw wpisz
javac Hello.java
wtedy skompiluje ci się plik Hello. class w tym samym folderze, a więc nic nie musisz robić i piszesz kolejną linijkę
java Hello (bez formatu tym razem)

Ppp

Byłbyś taki miły i dopisał ludziom o komendzie dir i auto-uzupełnianiu tab'em w konsoli.

Ppp

Choć w sumie o jednym i drugim nie trzeba pisać jeśli powiedzieć o przeciąganiu folderów/plików do konsoli.. no i wybieranie poprzednich komend strzałkami też taką minimalną podstawą jest, żeby się nie wściec czasem.. .
Choć w sumie - to nie jest kurs poruszania się po konsoli :P

Nihilius818

Mam problem z wejściem do folderu z plikiem
pisze mi że nie może znaleźć ścieżki

Andrzej

Rozumiem że nie możesz wejść z konsoli do folderu. Na początku najlepiej stworzyć sobie katalog bezpośrednio na dysku C, np. C:\programy java. Uruchamiając konsole z wiersz poleceń poleceniem cmd jesteś zapewne w katalogu użytkownik. poleceniem c.. przechodzisz do katalogu wyżej, aż dojdziesz do C:\
Będąc to wpisz "cd p" i klikaj przyciskiem TAB tak długo aż znajdziesz wspomniany cd "programy java" i klikasz enter.

reniolek

A ja mam 41 lat i nic nie rozumiem... Jestem dziwna? O_O

Witek

Witam
Nie jesteś dziwna, ja mam o 4 więcej i też miałem na początku takie same wrażenia, ale z czasem to minęło im bardziej zagłębiałem się w programowanie to uzmysłowiłem sobie, że nic nie wiem na ten temat, ale to teraz pomału się zmienia i jak się okazuje nie jest, aż tak źle jak to wszystko wyglądało na początku. Nie martw się to z czasem minie.
Pozdrawiam.

reniolek

Mam nadzieję, że minie. Pamiętam, jak się uczyłam Flash'a MX (juz wszystko pozapominałam) - na początku czarna magia, potem wszystko zrozumiałe. Ja tak napisałam, bo powyżej jest wpis pewnej dwunastolatki, która mówi: "wszystko rozumiem, jestem dziwna?" :) Pozdrawiam, dzięki za słowa otuchy

Witek

Witam
Kiedyś też tak mówiłem, wszystkie nowinki „ wsiąkały we mnie jak w gąbkę”, teraz już tak nie jest, na przyswajanie nowinek musze poświęcić trochę więcej czasu, ponieważ jak czegoś nie zrozumie to wtedy mam problem, bo nie wiem skąd coś się wzięło. Pomimo tego lubię się uczyć poznawać nowe technologie, ponieważ robię to dla siebie i zamiłowania. Ogólnie mówiąc robię to co lubię i mam z tego duże zadowolenie

E30Tomas

Witam
Ja mam 17 lat i od dziecka interesowałem się komputerami. Oczywiście jak znaczna większość moich rówieśników dużo gram, ale chciał bym też nauczyć się programować. Nie dawno zauważyłem, że wiedza na temat tego co mamy w PC, którą posiadam jest znacznie większa od moich rówieśników i ucieszyło mnie to i to Bardzo. Chciał bym przyswoić sobie jakiś język programowania, jak miałem 13 lat to próbowałem C++, ale kompletnie nic w tym wieku do mnie nie docierało, tak więc od zeszłego roku (niestety z przerwami co jakiś czas) zacząłem uczyć się Javy, ze względu na jej szerokie zastosowanie.
Początkowe lekcje przyswoiłem bardzo dobrze, ale zaczynając od tematu "Argumenty metod" zaczynam połowicznie rozumieć to co się dzieje w kompilatorze.
To normalne?
Dużo uczył się Pan programować zanim zaczął Pan samodzielnie pisać jakieś w miarę użyteczne programy?

Witek

Witam
Zanim zacząłem pisać programiki dużo czasu poświęcałem i nadal poświęcam na naukę pisania programów, ponieważ cały czas trzeba się uczyć ze względu na to, że co jakiś czas wchodzą jakieś nowinki, moim zdaniem jak ktoś chce w tym zawodzie pracować to niestety musi się ciągle uczyć. Staram się poświęcić praktycznie te dwie – trzy godziny na pisanie choćby małego programiku lub na powtórkę materiału z podstaw programowania. Życzę wytrwałości i zamiłowania do tego co się robi, choć nie zawsze wyjdzie.
Pozdrawiam

Akir

Jeśli chcemy aby wyświetlały sie polskie litery np w słowie Józef, można przepuścić Imiona.java przez http://www.webutils.pl/index.php?idx=conv wybierając Input windows1250 output cp852

Rafal

Jednego czego nie bardzo jarzę jak dotąd to sposób - kod odstępów od lewej krawędzi notatnika
tzn. gdy piszemy np. "public class Praca" to poniżej musimy wpisać następny wiersz czyli "public static voic main..." już z użyciem dwóch spacji - czy jest jakaś twarda zasada odnośnie tego?

Slawek

Wcięcia są robione automatycznie jeżeli używa się jakiegokolwiek edytora kodu :) Notepad++, Vim, lub eclipse

Maciej

Witam, zrobiłem wszystko jak w zadaniu niestety
przy po wpisaniu ścieżki do pliki Hello.java w moim przypadku h:\> javac Hello.java
nie pojawia mi się napis Hello World tylko od razu h:\>
jakieś sugestie co może być nie tak ?

Slawek

Przecież w lekcji jest wklejony screen i jest pokazane, że dokładnie tak ma się dziać. Ja rozumiem, że nie wszystko trzeba od razu rozumieć, ale zanim się zapyta, czy ciężko jest przeczytać coś z uwagą?

Mikołaj

Mam problem wpisuje wszystko tak jak w przykladzie próbuje zapisać.
Wpisuje w nazwie Hello.java, zaznaczam 'Wszystkie pliki' (standardowo jest 'Dokument tekstowy') i zapisuje mi się jako dokument tekstowy.

Mikołaj

ok juz sobie poradzilem :)

magda

Witam. gdy wpisuje cd nazwa_folderu – wychodzi że nie można odnaleźć odpowiedniej ścieżki, więc nie wiem a nawet jak skopiuje to nie wchodzi

Witek

Witam
Przeczytaj jeszcze raz całą lekcję i wszystkie posty, w nich powinnaś znaleźć odpowiedź na swój problem.
Pozdrawiam.

Piszu

cd to przejście do folderu.
Masz w ogóle taki folder, do którego chcesz wejść?
@Witek, jak odpowiadasz pisz konkretnie a nie odsyłasz ludzi.

Jack

Najpierw wejdź do odpowiedniej lokalizacji:
W wierszu polecenia h: [enter]
Powinno się wyświetlić: "h:\>" i wtedy wpisz: "javac Hello.java

Szymon

Jak narazie wszystko super. Zostanę ze strona na dłużej : )

Witek

Witam
W postach # 48,66 i 89 napisałem jak przejśc do katalogu ze swoimi ćwiczeniami, dlatego nie widziałem potrzeby na powtórne ich przepisywanie.
Pozdrawiam.

Michał

A ja mam pytanie za pomocą jakiego programu uswtawić "Uruchamianie" JS? (Java Script)
Bo jak zainstalowałem środowisko programistyczne Code::Blocs, to mi się ustawiło jako domyślne i nie wiem jak to zmienić?
Domyślnie po wpisaniu javac Hello.java wyskakuje błąd, a po wejściu (przez wpisanie Hello.java) otwiera mi edytor Code::Blocs...

daniel

Do jakiego folderu mam przejsc wtf?

Anonim

Wez nie klnij.
Do tego w ktorym zapisales

Patryk

Witam
Gdy odpalam ten mini programik to włącza mi się za pomocą notatnika a nie drukuje. Co robić ?

Anonim

Mozna by bylo zrobic plik wsadowy uruchamiajacy program. Wystarczy wpisac w notatniku:
@echo off
java nazwa_klasy
Nastepnie zapisac w formacie .bat , umiescic w tym samym folderze co klase i odpalić.

Anonim

A i o jednym zapomnialem.
Jesli miedzy @echo off a java nazwaklasy wpiszemy:
title "tytul"
to nazwa programu bedzie w pasku na gorze okna.

Borowa

Witam,
Mam problem ze sciezką
Umiesciłem Hello,java w C:\Program Files\Java\Java, a gdy wpisuje
c:
cd Program Files
to wyskakuje mi ze "System nie może znalesc określonej ścieżki"
Wyjaśni mi ktoś co robię źle ?

Pawel

taki komunikat pokazuje mi sie wyłącznie gdy nie wpisuje komendy cd Program Files z lokalizacji C:\>

amando

Mam taki problem bo jak wpisuje wszystko tak jak w poradniku i jak zatwierdzam po komendzie
C:\Program Files\Java>javac Hello.java to wyskakuje mi taki error nie wiem dlaczego

Hello.java:1: error: error while writing Hello: Hello.class public class Hello{
1 error

Jestem pewien że wszystko zrobiłem dobrze i nie wiem dlaczego mi to nie działa proszę o jak najszybszą pomoc

Dziękuje

Daniel

U mnie pojawia się takie coś

c:\java>javac Hello.java

c:\java>java Hello.class
Error: Could not find or load main class Hello.class

i nie bardzo wiem o co chodzi, kod skopiowałem z przykładu

odp

nie potrzebne po Hello .class

Nick

strasznie nie czytelny jest kod jak odrazu nawias otwierający klase po jej nazwie :/

Lucas

Witam!
Otóż mam taki problem wszystko działa zgonie z planem,tworzy mi się plik "hello.class" lecz gdy w CMD wpisuję hello.java otwiera mi się notatnik.Nie wiem co jest grane proszę o pomoc
Dziękuję z góry

Maca

Witam. Używam edytora NetBeans IDE 7.2 . Kiedy otwieram program przez cmd, wszystko co ma się wyświetlać wyświetla się jak należy (np. "Hello World"). A gdy chcę sprawdzić program od razu w NetBeansie, pokazuje mi się jedynie:
"run:
BUILD SUCCESSFUL (total time: 2 seconds)"
i to niezależnie, czy w programie mam błąd czy nie. Jak to naprawić? Błagam o pomoc :D

Szymon

Microsoft Windows [Wersja 6.1.701]


C:\Users\Kuba>d:
D:\>cd java
System nie może odnaleźć określonej śćieżki

oco chodzi?

B.K.



Szymon:

Microsoft Windows [Wersja 6.1.701]
C:\Users\Kuba>d:
D:\>cd java
System nie może odnaleźć określonej śćieżki
oco chodzi?


Musisz podać więcej szczegółów. Jeżeli chcesz się dostać do folderu w którym przechowujesz pliki to musisz pisać nazwę folderu dokładnie taką samą jaką masz na dysku.
Cryen

Proszę o odpowiedź
wpisuję
javac Hello.java
jest przerwa i potem wyswietla sie znowu lokalizacja tego pliku help!

B.K.

Aby uruchomić program w konsoli, musisz wpisać "java Hello".

"javac" służy tylko do kompilacji programu.

Paweł

Witam serdecznie.. właśnie zacząłem kurs i szczerze mówiąc trochę słabo się czuję po pierwszych lekcjach z programowania w Javie ponieważ nie wykonałem nawet pierwszego zadania... Mój problem polega na tym, że zainstalowałem Java Development Kit 1.7.0_07 z podanego w instrukcji linku.. przepisałem program do notatnika dokładnie tak, jak jest to podane.. uruchomiłem wiersz polecenia, wszedłem do folderu gdzie znajduje się plik Hello.java, jednak wpisując w wierszu polecenia: javac Hello.java, dostaję komunikat:


C:\Java>javac Hello.jav
Nazwa 'javac' nie jest rozpoznawana jako polecenie wewnętrzne lub zewnętrzne,
program wykonywalny lub plik wsadowy.
Bardzo proszę o pomoc.. pozdrawiam

lkuszal

mi komenda java i javac działa, ale wyskakuje taki błąd: http://screenshooter.net/5213335/ssjnvyt

Sławek Ludwiczak

void, nie vois

wokm

Tracę nerwy na poleceniu javac Hello.java. Nazwa javac nie jest rozpoznawana jako jako polecenie wewnętrzne lub zewnętrzne,program wykonywalny lub plik wsadowy. Nie mam już cierpliwości. Wytłumaczy ktoś gdzie mogę robić błąd?

Tymon

wokm - czy przypisałeś folder "C:\Program Files\Java\twoja_wersja_javy\bin" do zmiennej środowiskowej PATH ? Zobacz ten artykuł : http://javastart.pl/wprowadzenie/instalacja-jdk/ i napisz czy pomogło. Pozdr.

wokm

Tak Tymon, folder jest przypisany. Sprawdziłem to jeszcze raz...trochę mnie to zniechęca, bo nie potrafię znaleźć błędu. Według mnie wszystko jest ok, ale program się ze mną nie zgadza :/

Tymon

A może... zainstalowałeś jre a nie jdk ?
To trochę co innego :)

- JDK (JAVA DELEVOPOMENT KIT) = zestaw dla programistów wraz z "javac" itd.
- JRE (JAVA RUNTIME EDITION) = pakiet uruchomieniowy.

Musisz mieć zainstalowane obydwa. Skontaktuj się ze mną (jakby co) przez email :

sednatymon (!at!) hotmail (!dot!) com

Tymon

Aha ! I jeszcze jedno :

jak zainstalujesz jdk to do patha przypisujesz ścieżkę do katalogu JDK/bin (NIE JRE !!!) - to ma poważne znaczenie. !!!!

Co się u ciebie dzieje gdy napiszesz java w cmd ?

Bartues

Próbowałem przejrzeć te wszystkie posty i pewnie bym znalazł odp, no ale:
Przechodze do folderu kompilacja przebiega bez problemu i tworzy plik hello.class, ale gdy wywołuje java hello wyskakuje:

at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
itd (pewnie czegos mi brakuje zmienialem juz zmienna path)

Tomekahn7

a mi po wywołaniu komendy javac Hello.java nie dzieje się zupełnie nic - tj pojawia się jedna linijka pusta
i następna już jak przed wywołaniem komendy (czyli C:\Java>)

Łukasz



Ipek:

Ponieważ w kursie nie były omawiane znaki nowej lini, więc Twoj kod wprowadza tylko zamieszania dla kogoś kto jest nowy w programowaniu, a dla takich osób chyba jest ten kurs

Nie masz kompletnie racji. To w tym kursie jest nadmienienie, że println drukuje na końcu "\n" nie tłumacząc kopletnie co to robi. Niestety porzucam ten kurs, strasznie się zawiodłem.
Mwarw

Otóż robie tak jak w poradniku i nierozpoznaje komendy javac to robię tak jak w: http://javastart.pl/wprowadzenie/instalacja-jdk/ i nic POMOCY

Mwarw

Ps. pierwszy raz (przy instalacji) pomogło a teraz nic

kucz

przeczytałem posty, path ustawiony jak jest napisane we "wprowadzeniu" - nawet JRE zainstalowałem aby nie było bo też tu o tym ktoś pisał. Mimo to mam nadal: http://prntscr.com/kwcbo Proszę o info co jest nie tak?

Tomekahn7

Czy ktoś tu pomaga w ogóle?

T0M3K

Ja polecam do tworzenia w Javie programu Eclipse

Mariusz

Jestem totalnie początkujący. Język programowania, to tak jakby ktoś mnie wywiózł do Chin, a tam są same krzaczki i stąd moje pytanie: Może ktoś mi jasno wytłumaczyć, co oznacza "Static" w "public static void main(String[] args){", do czego to jest i czy są jeszcze jakieś inne opcje (mam na myśli inne słówka, które powodują jakieś zmiany w programie) ?

Patryk

Sławek, jeśli mogę tak powiedzieć ;). Mam problem... Mi java jest na C\Program Files a jak pisuje w cmd "c:'' to od razu zawsze mi przechodzi na Documents and Settings i nie mogę wejść do javy ;/

Patryk

cofam poprzedni komentarz już ogarniam :)

Marcino

do Patryk mam ten sam problem jak to zrobiłeś?

Michał

Jak wpisuje "javac Hello.java" to wtedy wyskakuje mi że nazwa javac nie jest rozpoznawana jako polecenie
,program wykonywany oraz plik wsadowy

BoNzo

Powinieneś najpierw przeczytać to:
http://javastart.pl/wprowadzenie/instalacja-jdk/

sasiad252(Krzysiek)

Mam problem, z ktorym nawet moj docent sobie nie radzi.Ucze sie od 2 miesiecy programowania w szkole.Napisalem 130-linijkowa aplikacje/gre tzw.MasterMind.W eclipse kompiluje i odpala sie poprawnie, jednak jak pruboje odpalic ten sam plik class w cmd to wyskakuje mi ponizszy blad:


C:\JAVA\Samples\Java\bin>cd ..

C:\JAVA\Samples\Java>java bin/MasterMind
Exception in thread "main" java.lang.NoClassDefFoundError: bin/MasterMind (wrong
name: MasterMind)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)

Dziwne w ty<m jest ze w eclipse uruchamia sie poprawnie a w cmd nie.Mam tylko 1 wersje javy.Nie jest to literowka czy cos takiego.Moj docent doradzil mi napisac cd .. + powrot do folderu(jak wyzej) bo podobno u niego to pomoglo.U mnie nie.

Czy ktos zna rozwiazanie tego problemu?
Jesli by ktos zechcial mi pomoc, a potrzebuje dodatkowych informacji, piszcie prosze na:
sasiad252@gmail.com

z gory dziekuje zas pomoc.

sasiad252®

LteKa

Witam,
Mam taki problem że wyskakuje mi błąd o taki:
Tu jest ScreenShot:
http://screenshooter.net/3104182/wuiytye

LteKa

Czy może mi ktoś z tym pomóc? Bo chce do kolejnych lekcji przejść :/

koRnad

Masz źle napisane : print. Zauważ, że piszesz : pring zamiast print

Robert

Witam,

jestem zupełnie zielony i niestety problemy mam już na starcie;

Po wpisaniu kodu w notatniku i zapisaniu go na pulpicie z rozszerzeniem .java jako: Hello.java
uruchomiłem konsolę (poprzez cmd) i przeszedłem do odpowiedniego folderu - Desktop>
chciałem skompilować plik przy użyciu komendy javac. wpisując:
...Desktop>javac nazwa_klasy.java
próbowałem też:
...Desktop>javac Hello.java

jednak w wyniku tego działania nie ukazał się nowy plik o rozszerzeniu .class
nic się nie ukazało poza komunikatami w stylu ...help for a list of possible options

poproszę o podpowiedź - co robię nie tak?

peter_24

Czy można w taki sam sposób skompilować kod z c++ . Co trzeba zrobić i i jakie komendy dać aby skompilować i uruchomić?

C3LIN

Mam ten sam problem!!



Robert:

Witam,
jestem zupełnie zielony i niestety problemy mam już na starcie;
Po wpisaniu kodu w notatniku i zapisaniu go na pulpicie z rozszerzeniem .java jako: Hello.java
uruchomiłem konsolę (poprzez cmd) i przeszedłem do odpowiedniego folderu – Desktop>
chciałem skompilować plik przy użyciu komendy javac. wpisując:
…Desktop>javac nazwa_klasy.java
próbowałem też:
…Desktop>javac Hello.java
jednak w wyniku tego działania nie ukazał się nowy plik o rozszerzeniu .class
nic się nie ukazało poza komunikatami w stylu …help for a list of possible options
poproszę o podpowiedź – co robię nie tak?
Mariusz

A macie prawidłowo ustawioną zmienną patch? Polecam najpierw zapoznać się z http://javastart.pl/wprowadzenie/instalacja-jdk/

C3LIN

http://dl.dropbox.com/u/1565876/zmienna%20path.JPG
http://dl.dropbox.com/u/1565876/komendy%20javac.JPG

Wszystko dobrze ustawione, problem nadal występuje.

Sławek Ludwiczak

ale z czym występuje problem, bo na screenach żadnego problemu nie widać (albo ja nie wiem, na co tam patrzeć?)

C3LIN

No właśnie wszytko wygląda ok, lecz gdy wpisuje komendę javac Hello.java nie otrzymuję odpowiedzi Hello World, wyskakuje ponownie d:\java> a w katalogu gdzie mam plik "Hello.java" po tej że komendzie pojawia się plik Hello.class. Nie wiem czy coś przeoczyłem, ale wszystko wygląda ok wiec w czym problem. Używam Win7 ale chyba nie w tym rzecz. Pozdrawiam.

C3LIN

Dokładnie tak : http://dl.dropbox.com/u/1565876/JAVA%20%C4%86WICZENIA/java.JPG

C3LIN

Ok. :) Wszystko jasne, nie wpisałem kolejnej komendy " java Hello " Mój bład :(

juryk

jak sie zapisuje nawias klamrowy?

Zaczes

Witam mam pewien problem podczas wpisywania komendy (dopiero zaczynam zabawę więc nie śmiejcie się) otóż po wpisaniu
java Hello
wyskakuje mi coś takiego:
Exception in thread "main" java.lang.UnsupportedClassVersionError: Hello : Unsup
ported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: Hello. Program will exit.

Na 100% nie mam żadnej literówki wszystko wpisuje tak jak z instrukcją

Sabina

wpisałam w cmd c:
potem wpisałam cd nazwa folderu czyli cd J i nie odnajduje mi ścieżki
dlaczego

Grzegorz

Nie wiem w czym mam problem. Od wczoraj siedzę nad tymi podstawami i ciągle to samo. Żeby nie było - czytam wszystkie komentarze, ale nic nie działa.
Cały czas wyskakuje "file not found: Hello.java"

1) Upewniłem się, że ścieżka w windowsie jest poprawna,
2) Skopiowałem już nawet plik java do katalogu bin w jdk7 i z tego poziomu go odpalam (żeby nie było, że jakaś spacja w adresie, to jave zainstalowałem na C:/Java),
3) nazwę klasy Hello piszę wielką literą.

Co jeszcze mogę zrobić?

Grzegorz

OK... Po męczarniach udało się odpalić plik i utworzył on klasę, ale zrobiłem to dopiero po nazwaniu samego pliku "hello" czyli tak jak nazwa klasy. Łaj tak?

L0l

kiedy wpisuje Hello.java to wyskakuje mi takie coś: http://scr.hu/121o/0q4ql
Co zrobic

Damian

Czytaj uważnie :P.

## javac Hello.java
## java Hello

Grego

Na IPadzie, reklama kwadratowa w lewej kolumnie, zasłania część tekstu kursu, może dło by się coś z tym zrobić? :)
Bardzo fajnie napisany kurs Gratuluję, Pozdrawiam.

Sławek Ludwiczak

Ciężko mi wymyślić niestety sposób na ominięcie tego problemu :) Na iPhone widzę, że w sumie też reklama jest chyba jedynym elementem, który się nie skaluje, w przyszłym tygodniu postaram się poszukać jakiegoś rozwiązania problemu.

Orzo440

Witajcie.Gdy wpisuje java Hello.java wyskakuje mi:Error:Could not find or load main class Hello.java.Nie wiem za bardzo co mam zrobić ;/

Dorian

Też tak mam.

Marcin Kunert

Upewnij się, że znajdujesz się w odpowiednim folderze.

Marek

Wszystko jest ok, tylko jak wpiszę "javac Hello.java" to nie wyświetla się ten tekst tylko "C:\Nauka Javy>"

Sławek Ludwiczak

Ponieważ dopiero po wpisaniu java Hello powinien pojawić się tekst generowany przez program.
"javac" służy do kompilowania, "java" do uruchamiania.

Orzo440

Już wiem gdzie małem błąd ponieważ zamiast java Hello wpisywałem java java.class lub hello.java ;p

koko

Exception in thread "main" java.lang.UnsupportedClassVersionError: Hello : Unsup
ported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: Hello. Program will exit.


Nie wiem co robić pomoże ktoś?

Krzysiek

mi po Hello.java wyskakuje: Hello.java:5: error: reached end of file while parsing
1 error ;/ Help

Krzysiek

OK już załapałem gdzie miałem błąd :)

Cinek

witam zacząłem dziś naukę, odrobiłem prace domowa
public class Hello{
public static void main(String[] args){
System.out.println("Ania\nBartek\nKasia\n");
}
}

Bod

Hej, lekki kłopocik mam, w konsoli robie zadanie ćwiczeniowe wszystko ok wpisuje javac Hello.java, chwile sie kompiluje (lekkie ścięcie) i nic nie wyskakuje, ktoś wie czemu co mam źle? to moj kod:

public class Hello{
public static void main(String[] args){
System.out.print("Hello world");
}
}

Nie wyświetla się nic a w cmd widać kolejną linie.. W cmd mam tak:

C:\Users\..\cd Desktop

C:\Users\..\Desktop\cd java

C:\Users\..\Desktop\java\javac Hello.java

C:\Users\..\Desktop\Java ********************

W linijce z ** mam pusto, wcześniej też się nic nie wyświetla, ktoś wie w czym kłopot?

lolo

Rozumiem, że te gwiazdki to tylko dla oznaczenia napisałeś w ostatniej linijce i naprawdę ich nie wpisujesz. Ale dlaczego piszesz Java z dużej polecenie powinno być java(przynajmniej u mnie jak się napisze z dużej to wywala, że nie ma takiego polecenia). Dlaczego nie piszesz java Hello? jak napiszesz samo java to powinno wywalić listę parametrów jakich możesz użyć.

bod

Tak te gwiazdki to dla oznaczenia.
Tzn wyświetla mi się z małej, napisałem z dużej z rozpędu, po prostu po wpisaniu ścieżki i \javac Hello.java
wyświetla mi się tak jakby linijka wcześniej samąe ścieżką do momentu folderu \java.

Co mam zrobić? Co źle robię?

lolo

Jeśli po pisaniu polecenia javac Hello.java nie wywala Ci żadnych błędów to powinno wszystko być dobrze.
A spróbuj w kodzie zrobić błąd. Napisz np. System z małej litery albo skasuj ; lub }.

bod

no to niby jest wszystko dobrze ale ja nie widze napisu 'Hello word' bo zwyczajnie on sie nie pojawia :P
po zrobieniu błędu, wywala błąd..
Czemu zatem przy poprawnym kodzie nic sie nie wyswietla?

lolo

A spróbuj wkleić ten kod:

public class Hello{
public static void main(String[] args){
System.out.println("Hello world");
}
}

Bod

Dalej nic sie nie wyświetla.. przechodzi do następnej linijki w cmd wyświetlając linijkę poprzednią i nic sie nie dzieje..

Bod

jakieś pomysły jeszcze?

lolo

Jedyne co mi przychodzi do głowy to, że może źle Ci się zainstalowała Java. Spróbój ją przeinstalować.

marv

Wszystko się udało. Jedyny problem miałem w tym, że wpisywałem printIn, czyli przez duże i zamiast małe L.
A tak cała instrukcja sama w sobie dość przejrzysta dla każdego początkującego. Też nie wiedziałem o co chodzi z tymi odstępami w notatniku przy każdej nowej linii, ale poradziłem sobie spacjami i nie zaszkodziło to mojemu programowi.
Czy odstępy jak spacja, tab, czy inne typy formatowania mają znaczenie przy uruchomieniu programu?
Pozdrawiam

DaaJay

Gdy piszę zadanie samodzielne i w cmd wpisuję javac Imiona.java wyskakuje mi 7 error
To mój program:
public class Imiona{
public static void main(String[] args){
System.out.println(,,Ania\nBartek\nKasia");
}
}

lolo

Wydaje mi się, że masz dwa razy wpisany apostrof( ' ) zamiast cudzysłowia ( " ). Jest to trudne do stwierdzenia gdyż system komentarzy zmienia niektóre znaki(takiej jak np.. cudzysłowia) podczas wysyłania. Dlatego radzę pisać na forum do którego jest link na górze i pod polem do komentarzy.

DaaJay

Miałeś rację, zadziałało od razu wielkie dzięki!

sara

Hej, weszłam z ciekawości na Twoją stronę i zaczełam robić krok po kroku co piszesz, a nie mam o tym pojęcia.. i działa... dla Ciebie to oczywiste ale dla mnie w ogóle. Bardzo fajna stronka dla początkujących, pozdrawiam.

Człowiek Kamień

Wpisałem ów kod i podczas kompilacji nie wyskakują mi żadne błędy jednak nie wyświetla się wiadomość "Hello World" tylko puste czarne pole.

prytek

Mam problem. Pisze wszystko w notatniku krok po kroku, zapisuje na dysku d:\Java, po czym otwieram konsole cmd i wpisuje odpowiednie polecenia. Wszystko było by ok, gdyby nie to, że wyświetla się mi tekst "Hello World". Ktoś wie może dlaczego?

arex

Gdzie mam to dać:

public class Hello{

public static void main(String[] args){

System.out.print("Hello World");

}

}

bo ja uczę się programować w telefonie z androidem, w programie "AIDE" i mam tam coś takiego:










i gdzie bym tego nie dał to wyskakuje błąd.
Jak załączę aplikację to tego mi nie odczytuje:

public class Komentarze{

//poniżej rozpoczyna się działanie programu

public static void main(String[] args){

/*Ten tekst

nie ma wpływu

na program */

System.out.print("Hello World");

}

}

arex

"bo ja uczę się programować w telefonie z androidem, w programie „AIDE” i mam tam coś takiego:"
zapomniałem tego dopisać :):

version="1.0" encoding="utf-8"?>







arex



public class arex{
public static void main(String[] args){
System.out.print("Hello world");
}
}

prytek

Dobra, już wszystko ogarnąłem.

Mikołaj

Jakąkolwiek komdende wpiszę do uruchomienia programu wyskakuje BRAK DOSTĘPU

Aida

U mnie po napisaniu kodu wyświetlił się taki komunikat:

Hello.java:3: error: package system doesn't exist
system.out.print ("Hello world");
^
1 error

Udało mi się ten problem rozwiązać, zamieniając system na System (pisane wielką literą) - http://java-error-messages.blogspot.com/2009/05/package-system-does-not-exist.html
Co może być przyczyną takiej interpretacji kodu?

lolo

Java rozróżnia wielkość litery i dlatego system.out.print() to nie to samo co System.out.print(). Nie istnieje klasa system tylko System posiadające podklasę out z metodą print()

felululu

Jak przepisuje (a przepisuje wszystko DOKŁADNIE tak samo, bo sprawdzałam z kopiowanym tekstem kilkakrotnie, jestem pewna) to nie działa, a jak kopiuje to tak - dlaczego tak się dzieje?

Lunada

gdzie dokładnie nie działa? Gdy już wpisujesz w konsoli? Ja też dziś zacząłem i wszystko mi śmiga ;)

felulu

O, cieszę się, że ktoś odpisał. :) tak, w konsoli wyświetla się błąd. A jak biorę plik ze skopiowanym kodem to wszystko jest ok. Ale przepisywałeś, nie kopiowałeś?

Lunada

Przepisywałem. Konsola wyświetla co zrobiłaś źle ;)

Maruch

Potrzebuje pomocy, jestem początkującym i to bardzo, po przejściu do odpowiedniego folderu i próbie skompilowania pliku wyskakuje mi komunikat:
C:\Users\Domeczek\Desktop\java>javac Hello.java
Hello.java:2: error: '>' exepcted
public static void main<String[] args{
1 error
Co mam zrobić??

Adam

mi po wpisaniu w cmd

javac Hello.java

nic się nie dzieje jak temu zaradzić?

Lunada

u mnie tez tak jest. Bo tworzy się ten plik z rozszerzeniem ".class" spróbuj po prostu po przejsciu do swojego katalogu w konsoli. wpisać
java Hello

mariusz

Uruchom program:

Najpierw uruchom konsolę (cmd), i przejdź do odpowiedniego folderu. Poruszamy się przy pomocy komend:

d: (lub c: ; e: itd) przechodzi na odpowiedni dysk
cd nazwa_folderu – przechodzi do odpowiedniego katalogu
cd.. – przechodzi do katalogu wyższego poziomu

… no i to powinno wystarczyć.

Gdy jesteśmy w odpowiednim katalogu (w moim przypadku d:/java/ musimy skompilować przy użyciu znanej nam już komendy javac. Robimy to wpisując:

javac nazwa_klasy.java

//Czytaj więcej na: http://javastart.pl/podstawy-jezyka/pierwszy-program/#ixzz2q3RYW1ih
możesz to jakoś po polsku wyjaśnić bo robię kombinuję prubóbuję i nic,,,,,,. k1`]\q/sd

Anje

Co do przepisywania kodu, to jak ma się telefon z androidem, to łatwo można zapamiętać składnie. Jeśli chodzi o edytor to polecam droid edit free, obsługuje wiele języków, korzystałm z niego przy Html, a teraz przy Javie z niego korzystam i mogę polecić z czystym sumieniem. (Jak ktoś chce to może pobrać płatną wersję, ale nie wiem czy się opłaca.

Anje

Tylko chodzi mi o edytor na androida jakby co.

Michal

A co jeżeli nie mam błędów. Plik .class się tworzy ale w okienku cmd nie wyświetla się żadna treść. (nie mam błędów bo już nawet przekleiłem treść żeby mieć pewność)

Michal

aha dobra, sorry musze sie w koncu kiedys nauczyc czytac ze zrozumieniem i do konca :P nie bylo pytania

CMJ

WItam WAS WSZYSTKICH
Na początek chciałem zaznaczyć że ten kurs jest dla mnie bo jestem zielony.
Mianowicie zainstalowałem JDK dałem Path i JAVA HULA ale po wpisaniu komendy
public class Hello{
public static void main(String[] args){
System.out.print("Hello World");
}
}
I potem w konsoli mieli mi i nie wyskakuje mi Hello tylko idzie dalej
F:\Java>javac Hello.java

F:\Java>
I tak to wygląda
co robię źle ???

2 Pytanie to opisujecie skuty typu „\n” może pytanie jest głupie ale czy jest gdzieś jakiś spis poleceń i ich opis by się tego nauczyć i PRZEDE WSZYSTKIM ZROZUMIEĆ

CMJ

WItam WAS WSZYSTKICH
Na początek chciałem zaznaczyć że ten kurs jest dla mnie bo jestem zielony.
Mianowicie zainstalowałem JDK dałem Path i JAVA HULA ale po wpisaniu komendy
public class Hello{
public static void main(String[] args){
System.out.print(„Hello World”);
}
}
I potem w konsoli mieli mi i nie wyskakuje mi Hello tylko idzie dalej
F:\Java>javac Hello.java

F:\Java>
I tak to wygląda
co robię źle ???

//Czytaj więcej na: http://javastart.pl/podstawy-jezyka/pierwszy-program/#ixzz2sGy2IbNc

Konshi

Można było krócej ale mi łatwiej tak ;)
public class Imiona{
public static void main{string[] args} {
System.out.print("Ania");
System.out.print("Bartek");
System.out.print("Kasia");
}
}
Lekcje bardzo dobre ;) wszystko wytłumaczone,będę sie uczył do końca. :)

Dudek

wpisuję w cmd "java" i "javac", wszystkie linijki się ładnie wyświetlają ale jak dochodzę do odpalenia -
javac Hello.java - to wyświetla- " 'javac' is not recognized as internal or external command,
operable program or batch file. "

-O co chodzi?

pszemek

wpisz
java Hello.java

Dudek

Problem rozwiązany, ale nie dzięki pszemkowi chociaż dziękuję za odpowiedź ;)

Dudek

Pojawił się kolejny problem czego jak wpisuję "javac Hello.java" nie otwiera mi się nic, a w folderze gdzie mam to plik "Hello World" pojawia mi się drugi plik 'Hello.class'

Lolo

Skoro po wpisaniu "javac Hello.java" jest generowany plik "Hello.class" to jak się niby nic nie dzieje?

Dudek

W cmd nic się nie pokazuje, ale gdy zajrzałem w folder to zobaczyłem że się utworzył nowy.
Ja chcę po prostu aby mi się wyświetlał napis "Hello World" w cmd

Lolo

A czytałeś w ogóle tą lekcje?

wpisz "java Hello"

Dudek

hehe

Dudek

LOL dzięki, ostatnio jakiś nie ogar jestem ;)

Nupek ;dd

Potrzebuję nazwy patch dla Widnows 7 64 bit,pilne! do zaisntalowania JDK

Cześć

Tak pojawia mi się komunikat. Gdy piszę javac hello.java to pisze javac is not recognized as an internal or external command , operable program or batch file , a gdy piszę java hello Could not find or load main class hello.

lolo

Prawdopodobnie nie masz zainstalowanego pakietu Java Development Kit.
http://javastart.pl/wprowadzenie/instalacja-jdk/

Cześć

Ok masz rację tam coś pokićkałem, teraz już zainstalowałem ponownie JDK ale nie chce mi znalezć ścieżki Hello mam w C\Program Files\java pomożesz? :D

lolo

włączasz cmd i wpisz:
cd C:\Program Files\java
i wtedy
javac Hello.java
java Hello

Cześć

Wiem jestem zielony...

Cześć

teraz poszło dalej tylko że mam 1 error - while writing Hello: Hello.class (odmowa dostępu) public classs Hello

lolo

Spróbuj skopiować klasę Hello.java do innego folderu i wtedy z odpalić javac

Cześć

pewnie dlatego że mam włączoną ochronę dysku C: bo przeczytałem. Zobaczymy

Cześć

teraz jak sprawić żeby error zniknął hehe :D

Cześć

podobnie jest gdy pisze java Hello.java

Cześć

tekst w notatniku przekopiowałem z tej strony tak jak było napisane

lolo

Pojawia ci się jakiś komunikat gdy wpisujesz javac Hello.java?
Spróbuj wpisać:
java Hello

Cześć

Witam, kiedy piszę w cmd javac Hello.java to nie chce mi się wyświetlić napis Hello world tak jak ma obrazku. Plik Hello.java mam w D\java. Dodam że korzystam z Windows 8.1. Co robię nie tak?

Ania

musze napisać program java w który podajemy imię nazwisko i datę prosze o pomoc

Lolo

A kto Ci kazał napisać ten program?

Janosch

Może warto spróbować samemu i w przypadku problemów poprosić o radę, a nie od razu iść na łatwiznę Aniu?

GlobiX

Daj mejla, to Ci podeślę :)

GlobiX

Daj jakiegoś mejla to Ci wyślę, bo tutaj nie można wklejać...

lolo

W celu odpowiedzenia komuś, należy najechać na jego komentarz i kliknąć na przycisk odpowiedz który się wyświetli. Inaczej nie wiadomo do kogo się zwracasz.

lolo

W celu odpowiedzenia komuś, należy najechać na jego komentarz i kliknąć na przycisk odpowiedz który się wyświetli. Inaczej nie wiadomo do kogo się zwracasz. A po za tym istnieje forum gdzie można umieszczać kody.

patcher

Witam, czy mógłby ktoś mi wyjaśnić bardziej dokładnie jak i kiedy stosować nawiasy klamrowe, co to są bloki kodu itp ? Będę wdzięczny. Stronka super. Dużo się można nauczyć.

lolo

hmm kiedy stosować nawiasy klamrowe. Kurde nigdy mi takie pytanie nie przyszło do głowy.

Nawiasy należy stosować gdy używasz instrukcji warunkowych, pętli, metod, klasa.
Między klamrami umieszcza się kod który ma być wykonany w ramach instrukcji if, metody, itp.
I właśnie te fragmenty między tymi klamrami to są bloki kodu.


PS: Jeśli moje tłumaczenie jest mało zrozumiałe to mogę je spróbować Ci wyjaśnić osobiście tylko napisz do mnie na gg lub jabbera ew. maila które powinieneś znaleźć na forum.

Sławek Ludwiczak

Dla uzupełnienia jeszcze tylko dodam, że w ogólności klamry warto stosować przede wszystkim dla podniesienia czytelności kodu - żeby widzieć gdzie coś się zaczyna wykonywać w naszym programie, a gdzie kończy.
W późniejszych lekcjach (instrukcje warunkowe, pętle) jest mowa m.in. o tym, że klamry w przypadku pojedynczych instrukcji (wywołania metod) można pomijać - aczkolwiek często nawet wtedy się je zostawia właśnie ze względu na czytelność.
Polecam czytać kurs dalej :)

Kutlet

Zrobiłem wszystko zgodnie z instrukcją. Wszystko szło dobrze aż do ostatniego etapu, czyli wpisania "java Hello". Wówczas wyskoczył błąd: "Error: Could not find or load main class Hello".

Chwila guglania pomogła mi rozwiązać problem. Gdzieś na angielskim forum napisano, aby w takim przypadku, zamiast "java Hello", napisać "java -cp . Hello". Tak zrobiłem - i wszystko ładnie zagrało, problem rozwiązany.

To znaczy nie do końca - bo nie wiem, czemu muszę dopisywać to "-cp . ". Mam coś gdzieś namieszane w ustawieniach? Jakieś niepotrzebne classpath aktywne czy coś? Proszę mądrzejszych o rozwiązanie problemu.

Łukasz

WItam Cię Sławku !

Otóż mam problem następującej treści. Napisałem program w postaci plik Hello.java i umieściłem go w folderze Java. Odnajduje go w konsoli (sprawdzam poleceniem dir) i próbuje wykonać polecenie javac Hello.java po czym dostaje błąd:

Hello.java:1: error: error while writing Hello: Hello.class

public class Hello{

1 error

Sprawdziłem uprawnienie ale wszystko jest OK. Jakieś sugestie ?

Pozdrawiam

Lolo

A czy ścieżka dostępu to: C:\java? Jeśli tak to spróbuj skopiować plik do innego folderu np. na pulpit i tak dać folder java i do niego Hello.java

Łukasz

Sorry za zamieszanie. Już znalazłem rozwiązanie.

SLox

Hej nie wiem o co chodzi wyskakuje mi w konsoli
Exception in thread „main” java.lang.UnsupportedClassVersionError: Hello : Unsup
ported major.minor version 52.0
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)

Lolo

Spróbuj przeinstalować jre i jdk i sprawdź czy masz ustawione Class Path

SLox

przeinstalowałem kilka razy moje wersje to
java 1.7.0_60-b19
javac 1.8.0_05
nie wiem jak sprawdzić czy mam ustawione call path

Lolo

Zainstaluj te same wersje, bo prawdopodobnie to jest problemem.

SLox

nie mogę znaleźć dla javy wersji 1.8 wszędzie jest 1.7.0_60 max

Lolo

Tu masz obie wersje 1.7
JDK
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
JRE
http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html

Lolo

Tu masz obie wersje 1.7
JDK
oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
JRE
oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html

SLox

zadziałało dzięki

SLox

mały błąd class Path miało być

kamil1352

hej, a o co autorowi mowiac zeby "przejdź do odpowiedniego folderu" ? w sensie chodzi o folder Javy ? ja mam go np w forlderze program files, do ktorego przez interface cmd nie za bardzo moge dotrzec...

Lolo

Chodzi o folder w którym masz plik z klasą. Nie musisz przechodzić do tej ścieżki przez cmd możesz wejść do tego folderu przez explorera i dać w folderze PPM i w menu kontekstowym powinna być opcja żeby otworzyć cmd w tej ścieżce (czy jakoś tak, ostatnio nie używam za bardzo Windowsa to nie pamiętam i nie mam jak sprawdzić jak dokładnie brzmi ta opcja) ew. jak nic takiego nie będzie to spróbuj wcisnąć Shift i wtedy PPM (a jeśli dalej niema takiej opcji to masz za stary system i powinieneś go jak najszybciej zmienić na jakiś aktualny).

Andy

A czy ktoś może wie dlaczego nawiasy klamrowe umieszczamy w nowych wierszach ( w naszym przykładzie ) linia 4 i 5 i do tego nie jedna pod drugą? I zechciał to wyjaśnić. Dzięks

Lolo

Kwestia stylistyki. Jak chcesz to możesz pisać nawet wszystko w jednej linii i będzie działać.

Andy

A w punkcie 3 omawiania instrukcji pisania tego pierwszego programu autor pisze: a również na to, że odpowiednie sekcje kodu – tzw bloki kodu – „akcentujemy” przy pomocy nawiasów klamrowych { }. Ich pominięcie sprawi, że program nie zadziała...'

To jak to jest????

Andy

Ups, sorki - pomyliłem się i napisałem nie na temat.

Lolo

Nawiasy klamrowe wyznaczają tzw. bloki kodu. Chodzi o to, żeby poinformować kompilator które polecenia mają należeć do ciała funkcji, instrukcji warunkowej if-else, pętli itp.
np. Jak napisalibyśmy :
for(int i=0; i<10; i++)
System.out.println("Jesteśmy w pętli");
System.out.println("Być w pętli czy nie być?");
System.out.println("Oto jest pytanie.");

To skąd kompilator miałby wiedzieć czy chcemy by wyświetlił:
Jesteśmy w pętli
Jesteśmy w pętli
Jesteśmy w pętli
Jesteśmy w pętli
Jesteśmy w pętli
Jesteśmy w pętli
Jesteśmy w pętli
Jesteśmy w pętli
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.

Czy:
Jesteśmy w pętli
Być w pętli czy nie być?
Jesteśmy w pętli
Być w pętli czy nie być?
Jesteśmy w pętli
Być w pętli czy nie być?
Jesteśmy w pętli
Być w pętli czy nie być?
Jesteśmy w pętli
Być w pętli czy nie być?
Jesteśmy w pętli
Być w pętli czy nie być?
Jesteśmy w pętli
Być w pętli czy nie być?
Jesteśmy w pętli
Być w pętli czy nie być?
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.

Czy może:
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.
Jesteśmy w pętli
Być w pętli czy nie być?
Oto jest pytanie.

A dzięki zastosowaniu nawiasów klamrowych { } można to łatwo zrobić. I dla pierwszego wariantu pisząc:
for(int i=0; i<10; i++)
System.out.println("Jesteśmy w pętli");
System.out.println("Być w pętli czy nie być?");
System.out.println("Oto jest pytanie.");
lub
for(int i=0; i<10; i++) {
System.out.println("Jesteśmy w pętli");
}
System.out.println("Być w pętli czy nie być?");
System.out.println("Oto jest pytanie.");

Drugiego:
for(int i=0; i<10; i++) {
System.out.println("Jesteśmy w pętli");
System.out.println("Być w pętli czy nie być?");
}
System.out.println("Oto jest pytanie.");

oraz trzeciego:

for(int i=0; i<10; i++) {
System.out.println("Jesteśmy w pętli");
System.out.println("Być w pętli czy nie być?");
System.out.println("Oto jest pytanie.");
}

Pewnie nasuwa Ci się pytanie dlaczego pierwszy wariant posiada dwie wersje. Dzieje się tak gdyż w przypadku nie użycia nawiasów klamrowych kompilator do bloku pętli, instrukcji warunkowych itp. zalicza tylko pierwszą linię pod for()/while()/if() itp. (funkcje i klasy zawsze muszą mieć kod umieszczony między { } ).
Oczywiście dla kompilatora jedna linię wyznacza wystąpienie średnika ; dlatego napisanie np.
int x=0;
int y=0;
for(int i=0; i<5;i++)
x++; y++;
System.out.println("x =" + x + " y=" +y)
zwróci
x=5 y=1
a nie
x=5 y=5

A jak napiszesz ten kod czy dasz { zaraz po for() czy w następnej linii, czy będziesz wszystko pisał w jednej linii nie ma to dla kompilatora znaczenia.

W innych językach mogą być inne rozwiązania dotyczące wyznaczania bloków kodu np. w Pascalu nie było { } tylko Begin i end wyznaczające zawartość np.pętli. Albo jak w Pythonie dla wyznaczenia bloku kodu używa się wcięć (od wersji 3 są już klamry jak w Javie)

Andy

Na wstępie bardzo dziękuję za Twoje komentarze i pomoc. Właśnie taka pomoc w porównaniu do publikacji książkowych jest nieoceniona. Jeszcze raz dzięki Tobie i Panu Sławkowi!!! Musze powiedzieć, iż jestem kompletnie "zielony" jeśli chodzi o programowanie ale zawsze mnie to nurtowało jak się tworzy programy i jestem mocno zmotywowany, żeby się tego nauczyć. Co do Twojego komentarza to wrócę z pracy do domu i poczytam to kilka razy, poćwiczę i mam nadzieję, że ogarnę temat:)

Smuger

Jak ktoś nie ogarnia:
1. Nazwij Pilik "Imiona"
2. Wpisz ten kod:
public class Imiona{
public static void main(String[] args){
System.out.println("Edyta");
System.out.println("Kinga");
System.out.println("Pola");
}
}
3. Skompiluj za pomocą komendy javac
3. Odpal za pomocą komendy java

AboundPL

Co dokładnie nie działa?
Pamietaj, że przed kompilowaniem programu musisz podać ścieżkę, gdzie znajduje się ten plik, a skompilować go komendą javac Imiona.java (nie zapominaj o .java)
potem odpalasz komendą Imiona (bez .class)
Mam nadzieję, że pomogłem

Karol

Kurde ale ja jestem głupi,
na samym początku przeczytałem
"Coś nie ogarnia"
i myslałem, że ci nie działa xD

Domel

działa dzięki

Domel

NIe wiem ale chyba sam nie ogarne, po wpisaniu Javac Hello.java

Na CMD wyskakuje
Hello.java:1: error: class, interface, or enum expected
publik class Hello{

Hello.java:2: error: expected
publik static void main(String[] args){

Nie domyślę się sam a robie już z kilkanaśie razy jedno i to samo

Wersja java 1.8.0_20

noname

publik class Hello
zmień na
public class Hello

Hubert

Nie moge przejść w cmd, zapisałem na pulpicie to robie:
c:
cd Użytkownicy
I w tym momencie wyskakuje: System nie może odnaleźć określonej ścieżki! WTF!?

Lolo

spróbuj cd Users

Filip

co mam zrobić jeżeli chcę zrobić skrót do pliku .class i go odpalić z poziomu pulpitu

Lolo

Masz na myśli, że przez klikniecie w plik? Musisz w takim przypadku stworzyć wykonywalny plik jar. Jak to zrobić spod konsoli niestety nie wiem, w Eclipse gdzieś w chyba build była taka opcja.

Filip

Znalazłem tą opcję i zrobiłem wykonywalny jar, ale po naciśnięciu w plik nic się nie dzieje

Filip

Jest to program graficzny

Lolo

może czegoś nie ustawiłeś, kiedyś robiłem takowy i aplikacja normalnie otwierała się po kliknięciu. Ale ja korzystałem wtedy chyba z IntelliJ a nie Eclipse.

Bartek



Ktos:

Istnieje także bliźniacza metoda println(string), która dodaje na końcu drukowanego tekstu znak nowej linii „\n” (i właśnie jej będziemy zazwyczaj używali).
mi się wydaje że były…


'println()' to nie to samo co 'print("\n")', ponieważ to pierwsze używa funkcji nowej linii, a to drugie tworzy nową linie w zupełnie inny sposób.
Marek

Mam problem, wszystkie porzednie lekcje robiłem tak jak kazano i wszystko działa jednak gdy dochodze do wpisania w konsole "cd java", bo plik mam zapisany w folderze C:\java\, wyskakuje mi "System nie może odnaleźć określonej ścieżki" co zrobić ?

Lolo

Na pewno jest w ścieżce C:\ ? Spróbuj wpisać cd c:\java

Marek

ok działa.
Wielkie dzięki

Filip

Mam problem, konsola nie widzi pliku a napewno tam jest

Lolo

Jak konsola nie widzi to albo jesteś w złym folderze albo jest on ukryty albo go tam niema

Filip

wszystko sprawdziłem i było dobrze, mam jdk1.8.0_05

Lolo

Gdy jesteś w katalogu z plikiem i wpisujesz dir w konsoli toi nie pokazuje Ci tego pliku wśród innych znajdujących się w danym folderze?

Filip

pokazuje

Lolo

To czemu twierdzisz, że konsola go nie widzi jak po wyświetleniu zawartości, pokazuje go?

Filip

problem rozwiązany , wystarczyło włączyć konsole jako administrator

Filip

co oznacza błąd:
Exception in thread "main" java.lang.ArrayIndexOoutOfBoundsException: 2
z góry dzięki

Filip

public class Hello{
public static void main(String[] args){
//Co mam zrobić by w tym miejscu program czekał np. 2 sek. przed napisaniem Hello World
System.out.print("Hello World");
}}

Lolo

try
{
Thread.sleep(t);
}
catch(InterruptedException e)
{
}

Czas ustawia się w milisekundach

Filip

Dzięki, teraz zrobie timer