[Java]Kompilator natywny Javy

[Java]Kompilator natywny Javy
0

Czy wie ktoś moze skąd można ściągnać kompilator Javy przekształcający pliki .class lub .java na pliki .exe pod Windowsem???

SZ
  • Rejestracja:ponad 21 lat
  • Ostatnio:ponad 15 lat
  • Postów:3356
0

Java jest językiem cross-platform, którego programy uruchamiają się na wirtualnej maszynie. Możesz najwyżej poszukać programów (a są takie na necie, gdzieś na tym forum chyba padła nazwa jednego z nich), które mogą Ci skompilować *.exe do uruchamiania takiego programu, ale to tak jakbyś ręcznie uruchamiał polecenie java.exe plik.class [względnie: javaw.exe plik.class], z wbudowanym downloaderem Java runtime environment [JRE]


Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir "Szczawik" Włodkowski
0

ja to sobie radze w tkai glupi sposob ,ale dizala
i nikt nie zauwaza
pisze program w c++

#include <iostream>

using namespace std;

int main(){
system("java klasa");
return 0;
}

no i dziala
fachura na maxa :)

KR
Moderator
  • Rejestracja:prawie 21 lat
  • Ostatnio:około 3 godziny
  • Postów:2964
0

Szczawik - istnieja kompilatory natywne dla javy, wiec nie jest tak jak piszesz. Zainteresuj sie GCJ.

0
Krolik napisał(a)

Szczawik - istnieja kompilatory natywne dla javy, wiec nie jest tak jak piszesz. Zainteresuj sie GCJ.

Królik - a czy nie znasz może kompilatora natywnego Javy ale dzialajacego pod Windows? Bo GCJ chodzi chyba tylko pod Unixami...

KR
Moderator
  • Rejestracja:prawie 21 lat
  • Ostatnio:około 3 godziny
  • Postów:2964
0

GCJ chyba działa pod Windows. GCC działa, to czemu GCJ miałoby nie działać?

SZ
  • Rejestracja:ponad 21 lat
  • Ostatnio:ponad 15 lat
  • Postów:3356
0
Krolik napisał(a)

Szczawik - istnieja kompilatory natywne dla javy, wiec nie jest tak jak piszesz. Zainteresuj sie GCJ.

O.. fakt. Przyznam, że pierwszy raz się z tym spotykam; ale rzeczywiście masz rację. Fajnie wiedzieć, że jest coś takiego. Dzięki. [browar]


Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir "Szczawik" Włodkowski
0

zadnych konkretow...
a skoro temat juz powstal to czy poda ktos jak dla matolka za pomoca jakiego kompilatora pisac mozna programiki w windowsie??
Linki, instrukcja zachecic niesmialych i nowych uzytkownikow? :)

eximius
  • Rejestracja:ponad 18 lat
  • Ostatnio:ponad 16 lat
0

natywny na na razie pewno nie bedzie Ci potrzebny, wiec zainteresuj sie JavaJDK (jest "pod windows") i Eclipse (eclipse.org)

pozdrawiam

0

ja mimo wszystko proponuje pisanie w Javie w NETBEANSIE. Chłopak naprawde odwala za nas kawal dobrej roboty. Np. sam uzupelnia w kodzie importy do pakietow.

owca
  • Rejestracja:prawie 18 lat
  • Ostatnio:ponad 8 lat
  • Postów:27
0

Może coś z tego zadziała:
http://www.ej-technologies.com/products/exe4j/overview.html
http://www.duckware.com/jexepack/index.html
Sam nie korzystałem, bo nie mam Windowsa.

Olamagato
  • Rejestracja:ponad 16 lat
  • Ostatnio:13 dni
  • Lokalizacja:Polska, Warszawa
  • Postów:1058
0

Ja też bym polecił dla początkującego netbeans - szczególnie w najchudszej wersji (tylko Java SE). To IDE przy okazji uczy porządku organizując wstępnie wszystkie rzeczy, które tego potrzebują. Potrafi nawet podpowiadać dostępne konstrukcje języka kiedy się ich zapomina - a tak jest właśnie u początkujących.


Jeżeli ktoś komuś coś, ewentualnie nikt nikomu nic, to właściwie po co...?
R2
  • Rejestracja:ponad 16 lat
  • Ostatnio:około 16 lat
0

Ja sie tez zapytam o to samo
"jak to zrobic zeby dzialalo?"

mam sciagniety JDK, JCreator i sama masa roznosci do Javy, cos juz 2 GB sie nazbieralo, a napisanie i urochomienie prostego "Hello User" to nastrecza niezle trudnosci, mam to napisane w Jcreator, ale jak to zapisac w .exe? mam w jakichs plikach javy ale tego sie nie da urochomic, klikniecie w ikonke hello powoduje ze mi sie caly JCreator otwiera i to kod zrodlowy pokazuje.
Mam na mysli takie dzialanie jak mialem kiedys w Delphi Builder Borlanda, gdzie pisalem program, wstawialem elementy, i moglem sobie to zapisac jako .exe i przeniesc na kazdy komp i dzialalo. prostackie Hello User robilo sie w mniej niz 2 minuty, byla ikonka hello.exe i po kliknieciu otwieralo sie okienko z przywitaniem, powazniejsze programy tez tam sie dawalo pisac i dzialalo...w javie cos nie moge tego prostego nie moge osiagnac..jak to zrobic?

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Wpierw powstają pliki źródłowe *.java (można je utworzyć nawet w notatniku). Pliki te są (pół)kompilowane do postaci *.class. IDE (np. JCreator) ułatwia kompilację, ale nie jest konieczne - wystarczyć wpisać polecenie javac *.java (javac MojaKlasa.java). Bardziej rozbudowane programy zawierają wiele klas (plików *.class), które są pakowane do jednego pliku *.jar. Pliki *class i *.jar są takie same dla wszystkich SO (Windows,Linux,Mac,...)
Do uruchomienia programu niezbędne jest by na komputerze była zainstalowana JVM (JRE). Uruchomienie wygląda tak:

  • program jest w pliku MojaKlasa.class
    wpisujemy polecenie

java MojaKlasa
lub (Windows) kojarzymy rozszerzenie class z
programem java

  • program jest w pliku MojProgram.jar
    wpisujemy polecenie

java -jar MojProgram.jar
, w systemie Windows
wystarcza zazwyczaj (tzn. po standardowej instalacji JRE) kliknięcie w ikonę pliku


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
R2
  • Rejestracja:ponad 16 lat
  • Ostatnio:około 16 lat
0

bogdans a niby gdzie to trzeba wpisac?

z tego co widze to juz mam ze 3 wersje JRE na kompie a jak klikam ikonke helloworldapp.java to po dawnemu otwiera mi sie JCreator i widze kod zrodlowy to co sam napisalem...co ja robie nie tak?

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

OMG, Menu Start => Uruchom (Run) => wpisz cmd => wpisz cd katalogZPlikiemClass => wpisz java nazwaKlasy (bez .class).


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
R2
  • Rejestracja:ponad 16 lat
  • Ostatnio:około 16 lat
0

dzieki bogdans za cierpliwosc tylko to nie dziala tak jak powinno, wchodzenie do command line czyli DOSa nie dalo nic wiecej jak napisalem poprzednio, dochodze do plikow class i widze taki komunikat:
'hello' is not recoginized as an internal or external command, operable program or batch file

ale w programiku exe4j skompilowalem gotowe demo, i jest .exe poprzez command line wszedlem do katalogu w ktorym sa, komenda dir pokazala mi co tam jest i jakie rozszerzenia, sa .class, .exe, .ico, .bmp, wpisuje hello i otwiera mi sie okienko hello world, tyle ze to otwiera gotowe exe a nie class, bo mam w innym katalogu same .class i nic z nimi nie moge zrobic bo zobacze komunikat jaki powyzej wpisalem, po prostu utknelem na wyprodukowanu plikow .class i co dalej? mam te .class z windowsa jak w nie wejde to otworzy mi sie Jcreator i pokaze kod zrodlowy, z DOSa komunikat jak wyzej, wiec stoje w miejscu i co ja mam z tym zrobic? co ja robie nie tak?

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Napisałem

java MojaKlasa

Masz wpisać

java hello

a nie

hello

BTW, moja cierpliwość się właśnie skończyła


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
Olamagato
  • Rejestracja:ponad 16 lat
  • Ostatnio:13 dni
  • Lokalizacja:Polska, Warszawa
  • Postów:1058
0

Jeszcze jedna uwaga. Wiele IDE ma tak, że jeżeli umieścisz metodę main klasy Javy w jakimś pakiecie, to po kompilacji oczekiwanym katalogiem domyślnym dla uruchomienia tej klasy nie jest katalog w którym ta klasa się znajduje, ale katalog wyżej. Na przykład jeżeli umieszczę main() klasy XXX w pakiecie pakiet1, a sam projekt będzie się nazywał program1, to klasa z main() będzie umieszczona zaczynając od foldera projektów na takiej ścieżce: program1/build/pakiet1/XXX.class. Wtedy katalogiem bieżącym dla uruchomienia XXX.main() będzie <folder projektów>/program1/build, a wywołanie powinno uwzględniać ścieżkę: pakiet1/xxx.class. Jeżeli spróbujemy odpalić xxx.class z katalogu w którym xxx.class się znajduje, to otrzymamy błąd nieodnalezionej klasy poniewaź JVM będzie oczekiwać metody main na ścieżce pakiet1/xxx.class, a dostanie ./xxx.class. Stąd trzeba wejść katalog wyżej (program1/build) i stantąd wywołać "java pakiet1/xxx".

Głupie to i mnóstwo nerwów mi kiedyś zjadło, ale wiele IDE tak ma.

Na takie przypadki jedynym skutecznym sposobem jest utworzenie klasy, która będzie bez pakietu, co oznacza, że znajdzie się w katalogu bieżącym dystrybucji pakietu, a z jej metody main można już wywoływać bez problemu wszelkie inne klasy w pakietach. W tak zrobionym projekcie kliknięcie na klasę zawierającą main(), które odpali wywołanie java klasa, zadziała zgodnie z oczekiwaniami uruchomieniem programu.


Jeżeli ktoś komuś coś, ewentualnie nikt nikomu nic, to właściwie po co...?
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)