[Poradnik] Prosta kompilacja w IntelliJ IDEA

Zaczęty przez Shyque, Marzec 27, 2011, 10:19:53 AM

Poprzedni wątek - Następny wątek

Shyque


Zacznijmy więc od pobrania programów:
JDK - pobrania http://www.oracle.com/technetwork/java/javase/downloads/index.html
IntelliJ IDEA-http://www.jetbrains.com/idea/download/
Z instalacja programów nie powinno być problemów.

1.


2.Naciskamy "+"



3.Teraz trzeba dodać linki SVN.



4.W oknach widać nowy link svn. Kliknij prawym przyciskiem myszki i wybierz Checkout ...



5.Teraz musisz ustawić katalog



6.W  Opcje kliknij przycisk OK.



7.Wybieramy format.L2jServer Subversion ma 1.4



8.Pobieramy kod źródłowy....



9.Po zakończeniu pobierania kody , klikamy Tak



10.Teraz wybieramy Utwórz Java Project z kodu . Kliknij przycisk Dalej



11.Nazywamy nasz projekt i klikamy przycisk Dalej.



12.Teraz musisz wybrać JDK.Klick na + . a następnie JSDK.



13.Wybierz lokalizacje jdk java.



14.Skanowanie JDK



Teraz możesz edytować kod źródłowy. Należy kliknąć na Projekt i edytować pliki :)



Tworzenie Patch:

to bardzo proste! tylko edytujemy pliki , kliknij na swój projekt  prawym przyciskiem myszy i wybierz  lokalny Historia -> Podgląd Historii



2.Widać wszystkie zmiany naszego kodu .Zaznacz swoją  i kliknij przycisk Tworzenie Patch.



3.Wybierz gdzie chcesz zapisać patch.



Kompilacja


1.Bardzo proste po prostu kliknij na Ant i + .



2.Wybierz folder źródłowy i zaczynamy budować build.xml. Skanuje pliki.



3.Wybierz projekt



4.Mamy skomplikowane pliczki . Widzimy



/GenesiZ
Brawo, świetny poradnik :)



Shyque

Jeżeli macie jakieś zastrzeżenia proszę zgłaszać na priv i w temacie .

Vearth

Genesiz jak jemu dales dwa plusy to mi daj chociaz jednego za kolekcje plikow [nic tam nie dostalem :p]
8) 8)

impos89

Pierwszy raz widzę, że ktoś ktorzysta z IntelliJ :P
Polaczkowo:
Impos - Aeore Healer lvl 93 / Wynn Summoner 85 / TH 58
klan - Kowale
CP Sairea

Maślan


Vearth


zych3

Witam.

Piszę aby podziękować za poradnik. Jest bardzo przydatny i zdecydowanie mi pomógł.

Pozdrawiam :)

Shyque

Prosze bardzo dla mnie to przyjemnosc pomoc komus , Pozdrawiam

szponiasty

#8
InteliJ zjada inne IDE (a przynajmniej jeśli chodzi o Javę) na śniadanie.

Do swojego build.xml możesz dorzucić coś co sobie zrobiłem, żeby nie bawić się w kopiowanie i przygotowywanie serwera testowego za każdym buildem ;) Buduje od razu, gotowy do uruchomienia i testów serwer:

Do build.xml core:

    <target name="test_environment" depends="dist_no_zip" description="make dist and copy all to ../../#test_env folder">
<mkdir dir="${build}/../../#test_env"/>
<delete file="${build}/../../#test_env/game/config/l2j-version.properties"/>
<copydir dest="${build}/../../#test_env" src="${build.dist}" forceoverwrite="true" excludes="**/*.old, **/*.bak, **/config/*" />
<copydir dest="${build}/../../#test_env" src="${build.dist}" forceoverwrite="false" includes="**/config/*"/>

    <!-- ASK DEVELOPER IF HE WISHES TO START NEWLY BUILT TEST ENVIRONMENT>
    <input
    message="Do you wish to execute newly built test environment (y/n)?"
    validargs="y,n"
    addproperty="do.delete"
    />
    <condition property="do.abort">
    <equals arg1="n" arg2="${do.delete}"/>
    </condition>
    <fail if="do.abort">Build finished.</fail>

    <exec executable="${build}/../../#test_env/game/startGameServer.bat"><arg line="/cd ${build}/../../#test_env/game" /></exec -->
    </target>


Do build.xml DP:

    <target name="test_environment" depends="dist_no_zip" description="make dist and copy all to ../../#test_env folder">
<copydir dest="${build}/../../#test_env" src="${build.dist}" forceoverwrite="true" excludes="**/*.old,**/*.bak" />
</target>
[code]


Zmodyfikuj też startGameServer.bat (dodaj na początku pliku, po @echo off):
[code]
if "%1"=="/cd" goto cd
goto start
:cd
cd "%2"
:start
rem no need anymore to copy test configs. using -use_test_configs param passed to gameserver, to force it to use configs in config_test folder instead of config folder
copy /Y .\config_test\* .\config\* > NUL


Trzymaj konfigi serwera testowego w ../../#test_env/game/config_test, to przy starcie GS, bat będzie je wrzucał do "config" (bo każdy build zastepuje zawartość "config" domyślnymi plikami z core).

PS. Zakomentowany kod w build.xml dla core możesz se odkomentować, wtedy IDE będzie cię pytało po skończeniu buildu, czy od razu uruchomić serwer testowy. Ale nie używam, bo wszystkie komunikaty wtedy wyświetlają się w konsoli inteliJ i jest to dla mnie niewygodne.
Oj tam oj tam

impos89

Nie miałem przyjemności bawić się intelliJ, jednak i tak stwierdzam: Netbeans > notatnik > eclipse
To co się dzieje z eclipsem od czasu Juno, jest przerażające...

Polaczkowo:
Impos - Aeore Healer lvl 93 / Wynn Summoner 85 / TH 58
klan - Kowale
CP Sairea

szponiasty

Netbeansa nie nawidzę już (8+h dziennie w korpie go oglądam), a eclipse to shit. Nie ma nawet porządnego diffa. Zawsze się gubi, wystarczy że np. jakaś metoda będzie o 5 niżej czy wyżej. Już nie wspominając o zamotkach jakie ma z tabulacjami ;( Chyba, że poprawili. Anyway polecam InteliJ, zwłaszcza x64. Jest genialnie szybkie, wygodnie się robi (nawet rozpoznaje w kodzie java, czy jakieś zmienne z .properties są używane, i poszarza je jak nie).
Oj tam oj tam

impos89

#11
jest jakas przystepna cena dla non-commerce?
180 EUR za licencje dla domowych :D

Tak w ogóle to nie masz wakatu u siebie ? Baaardzo dawno nie siedziałem w l2jotach a chyba skill mi znacznie podskoczył, w końcu już niedługo 2 lata w zawodzie mi wpadną :)
Polaczkowo:
Impos - Aeore Healer lvl 93 / Wynn Summoner 85 / TH 58
klan - Kowale
CP Sairea

szponiasty

Ja używam wersji free: https://www.jetbrains.com/idea/download/index.html

Znalazłoby się miejsce w teamie ;) Rzuć maila czy coś na prv.
Oj tam oj tam

Shyque

Widzę nowy jakiś projekt Szponiasty :D powiedz coś więcej o tym xD

impos89

Temat zdominowany przez morskie wygi. Obadam dzisiaj tego intelliJ :)
Polaczkowo:
Impos - Aeore Healer lvl 93 / Wynn Summoner 85 / TH 58
klan - Kowale
CP Sairea

szponiasty

Cytat: Shyque w Luty 01, 2013, 08:19:11 AM
Widzę nowy jakiś projekt Szponiasty :D powiedz coś więcej o tym xD
Taki tam, total custom z elementami L2 :) Zebraliśmy się razem i łączymy 4 projekty w jeden.
Oj tam oj tam

impos89

A nie myślałeś, może o jakimś nowym projekcie ? Np. zrobieniu emu pod jakąś nowszą grę ? Nie chodzi tu o nabijanie kabzy lub robieniu nie wiadomo jakich spin z retail-like w dobie free to play. Ale można pobawić się nowymi technologiami i opracować np. emulatorek dający jakieś pole do popisu. Z całym szacunkiem ale l2j nie nadaje się do refaktoru tylko do reimplementacji...

Niemniej jednak nie będę wybrzydzać i mogę poświęcić trochę czasu po pracy aby poogarniać z Wami ten projekt.
Polaczkowo:
Impos - Aeore Healer lvl 93 / Wynn Summoner 85 / TH 58
klan - Kowale
CP Sairea

szponiasty

Taki jest plan. Chcemy na tym projekcie uzbierać trochę kabzy na jakichś pierdułkach z doty i next krok: wykorzystać ją do stworzenia własnego mmo :) Core może zostać l2j (po unowocześnieniu), najgorszy koszt to zrobienie klienta.
Oj tam oj tam

impos89

Wpadłem na plan napisania klienta na androidzie :) proste rzeczy, logowanie, jakieś poruszanie, odpalenie skilla. Taki mam plan, w ramach nauki pisania czegoś na andka.

Z l2j można wygrzebać sam silnik. Podrasować go, refaktorując, odświeżając liby itp. Można też sporządzić wtedy osobny interfejs sieciowy, aby udostępnić łatwą developerkę dla klienta + debugowanie.

To ma szanse bytu :)
Polaczkowo:
Impos - Aeore Healer lvl 93 / Wynn Summoner 85 / TH 58
klan - Kowale
CP Sairea