Witaj
Gość

Wątek: Kompilacja  (Przeczytany 3649 razy)

  • Wiadomości: 1

  • Pochwał: 0

Kompilacja
« dnia: Listopad 11, 2008, 12:05:27 pm »
Czy jest możliwe po kompilacji plików wrócić do plików źródłowych?


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #1 dnia: Listopad 11, 2008, 12:13:50 pm »
tak.

Istnieje taka możliwość jednakże jest to "nieopłacalna" czynność. Ale jeżeli już Cię to interesuje zaglądnij do tematu Ważne Linki - tam podałem ostatnio linka do programu który to zrobi :)


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #2 dnia: Listopad 11, 2008, 03:35:40 pm »
Wiesz może jak to zrobić? Bo bym chciał od razu cały dp na pliki źródłowe przerobić. Trzeba zrarować i poźniej cos w tym programie dac?


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #3 dnia: Listopad 11, 2008, 03:45:37 pm »
plik *.jar rozpakowywujesz winrarem.

Póżniej programem DJ java decompiler sobie oglądasz pliki *.class - można całego core "dekompilowac" ale to wymaga duuużo czasu oraz nie opłaca się :P


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #4 dnia: Listopad 11, 2008, 04:42:42 pm »
Ok dekomilacja udaje się tylko teraz nie mogę po zmianie zamienić pliku .java na .class


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #5 dnia: Listopad 11, 2008, 04:44:36 pm »
bo ponowna kompilacja jest nie możliwa :)


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #6 dnia: Listopad 11, 2008, 04:46:14 pm »
Kurde ale lipa czyli nie ma możliwośc wprowadzenia zmian w jakims pliku?


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #7 dnia: Listopad 11, 2008, 04:50:34 pm »
nie ma - dekompilacja służe jedynie reverse engeringu czyli sprawdzenia na jakiej zasadzie działa program w celach uzyskania informacji potrzebnych przy póżniejszym zastosowaniu we własnej aplikacji :P


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #8 dnia: Listopad 11, 2008, 04:53:08 pm »
To na czym polega kompilacja ze źródła nightly?


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #9 dnia: Listopad 11, 2008, 04:56:18 pm »
masz żródła i je sobie kompilujesz xD


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #10 dnia: Listopad 11, 2008, 05:06:45 pm »
Nom ale pliki źródłowe są też java


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #11 dnia: Listopad 11, 2008, 05:14:20 pm »
Cyat Luna:

Cytuj
Kazdy program, jakiego uzywamy (a wiec np notatnik, czy word, czy  gra L2 albo serwer do L2, czy nawet system operacyjny) ma poczatek w kodzie zrodlowym.
Kod zrodlowy jest to zwykly "dokument" napisanyh przez programiste, w jezyku dla niego zrozumialym.
(Dlatego w kazdym jezyku mamy tak wiele mowiace slowa jak if, while, function, return, goto itd). Jednak zeby jezyk ten byl zrozumialy dla komputera, musi byc w pelni wyspecyfikowany i jednoznaczny. Ogolnie mozna taki jezyk napisac jezykiem programowania.

Po napisaniu juz kodu programu przez programiste moga dziac sie rozne rzeczy, zalezne od tego jaki jezyk sie wybralo:

1) Napisany przez nas kod moze byc od razu wykonany przez jakies srodowisko, bez kompilacji. Jezyki takie nazywa sie jezykami interpretowanymi i zalicza sie do nich np PHP, ktore modul php czyta w takiej formie jak zostaly napisane i od razu wykonuje.

2) Wiele jezykow jest kompilowanych przez kompilator do kodu natywnego (np c, c++). Kod natywny jest juz "czysta" forma programu ktora od razu moze byc wykonana. Takie jezyki charakteryzuja sie tym, ze np skompilowane na windowsie nie zadzialaja na linuxie (pomijajac rozne wine).

3) Jezyki kompilowalne do kodu posredniego (np Java). To jest to co znajduje sie w plikach .class. Kompilator javy (javac) kompiluje kod zrodlowy z plikow .java do tzw bytecode'u, ktory mozna okreslic jako "pseudoassembler" jednak zaden procesor nie wykona takiego kodu od tak. Wymagana jest do tego maszyna wirtualna. Dzieki obecnosci maszyny wirtualnej, pliki .java skompilowane np pod windowsem (do .class) beda mogly byc uruchomione zarowno na windowsie, linuxie, czy solarisie.

Maszyna wirtualna odczytuje pliki .class i (w przypadku javy) kompiluje je do kodu natywnego, juz pod system na ktorym pracuje.

Pytasz jak otworzyc pliki .class - ty nie masz najmniejszej potrzeby ich otwierac, one nie sa przeznaczone dla ciebie, tylko dla maszyny wirtualnej.
Mozesz conajwyzej je uruchomic.

Czego maszyna wymaga od programu, zeby mogla go uruchomic:

W javie wszystko jest obiektem. Nie mozna (tak jak w c) stworzy pliku i w niej tak po prostu zdefiniowac metody main().
W javie glowna klasa (Np nazywajaca sie GameServer) musi zawierac statyczna metode (o tym co to jest metoda i co to znaczy ze jest statyczna, mam nadzieje ze sobie poczytasz) o nazwie main().

Po skompilowaniu pliku GameServer.java do GameServer.class
Wystarczy ze wpiszesz w konsoli:
java GameServer
wtedy maszyna wirtualna skompiluje bytecode do kodu natywnego, nastepnie zaladuje klase GameServer i bedzie probowala odpalic statyczna metode main().

To tak na wstep.

To Ci rozwieje wątpliwości i pytania


  • Wiadomości: 14

  • Pochwał: 1

Odp: Kompilacja
« Odpowiedź #12 dnia: Listopad 11, 2008, 05:15:32 pm »
*.java -> kompilacja (np javac) -> *.class
*.class -> dekompilacja -> *.java

Dekompilacja zwraca najczesciej kod malo czytelny, niezrozumialy. Moze zamiast dekompilowac latwiej bedzie sciagnac kod zrodlowy z SVN?


Maślan: Może zrozumie :P
« Ostatnia zmiana: Listopad 11, 2008, 05:17:38 pm wysłana przez Maślan »


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #13 dnia: Listopad 11, 2008, 05:18:20 pm »
Właśnie w tym problem że ten team nie udostępnia plików z svn


No ok to tak rozpakowałem plik jar otworzyłem plik enterworld.class i chcialem zmienić powitanie "Welcome to the World of Lineage II". Nom i jak zmieniam to wyskakuję mi żeby zapisać ten plik i zapisuje w postaci java.


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #14 dnia: Listopad 11, 2008, 05:20:25 pm »
zrozum że kodu z dekompilacji nie zkompilujesz w pełni działającą aplikację.


Podaj nazwe tego teamu to zaraz bedziesz miał Source code


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #15 dnia: Listopad 11, 2008, 05:22:04 pm »
www.l2rt.ru

Ja nie mogłem nigdzie znaleźć ich plików źródłowych
« Ostatnia zmiana: Listopad 11, 2008, 05:32:02 pm wysłana przez Gher »


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #16 dnia: Listopad 11, 2008, 05:33:25 pm »
kolego nie mozesz używać znanych serwerpacków a nie rosyjskich ? :P


  • ********
  • Wiadomości: 1980

  • Pochwał: 57

Odp: Kompilacja
« Odpowiedź #17 dnia: Listopad 11, 2008, 05:35:47 pm »
No dokładnie. Jedyne chyab słowo, które tam zrozumialem, to Lineage 2 xD
Prepare for unforeseen consequences...


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #18 dnia: Listopad 11, 2008, 05:36:22 pm »
No dokładnie. Jedyne chyab słowo, które tam zrozumialem, to Lineage 2 xD

a ja jeszcze developers :P


  • ********
  • Wiadomości: 1980

  • Pochwał: 57

Odp: Kompilacja
« Odpowiedź #19 dnia: Listopad 11, 2008, 05:38:57 pm »
"RusTeam :: LineAge II Dev Server", "KTO", "Skin designed by Soi Edit by Zloctb (Red Z Group)" i "Copyright ©2000 - 2008, Jelsoft Enterprises Ltd." xD

Cluster nawet imponujący...

Dobra. Nie róbmy offtopa ;)
Prepare for unforeseen consequences...


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #20 dnia: Listopad 11, 2008, 05:41:51 pm »
Właśnie zależy mi na ich plikach ale nie ma tam nigdzie odnośnika na forum do svn. Chce edytować ten napis "Welcome to the World the Lineage II"


  • ********
  • Wiadomości: 1980

  • Pochwał: 57

Odp: Kompilacja
« Odpowiedź #21 dnia: Listopad 11, 2008, 05:42:54 pm »
Bez plików źródłowych tego nie zmienisz niestety.
Prepare for unforeseen consequences...


  • ******
  • Wiadomości: 1390

  • Pochwał: 15

  • Urażona dzidzia, urażona dzidzia!
Odp: Kompilacja
« Odpowiedź #22 dnia: Listopad 11, 2008, 05:51:47 pm »
a Gher dlaczego nie napiszesz PM do jednego z adminów z pytaniem czy udostępnią Ci svn ?


Soul: tym bardziej, że rozumiesz rosyjski xD

Trudno po ang napisać Gher ? :P Napewno zrozumieją heheh
« Ostatnia zmiana: Listopad 12, 2008, 03:41:06 pm wysłana przez Maślan »


  • Wiadomości: 67

  • Pochwał: 0

Odp: Kompilacja
« Odpowiedź #23 dnia: Listopad 13, 2008, 01:49:33 pm »
Napisali mi że nie udostępniaja. Znacie może jakieś teamy które dalej zajmują się Interlude i posiadają svn?


  • ********
  • Wiadomości: 1980

  • Pochwał: 57

Odp: Kompilacja
« Odpowiedź #24 dnia: Listopad 13, 2008, 06:04:12 pm »
Z reguły jest tak, że na svnie masz każdą kronikę, jaką zajmował się dany team.
Prepare for unforeseen consequences...