Jak skompilować pojedynczy plik Java

Szukałem tego, ale nie mogłem znaleźć lub zrozumieć, co znalazłem.
Teraz nie jestem programistą Javy, ale mam potrzebę skompilowania pojedynczego pliku Javy do istniejącego (skompilowanego) programu Java. Źródło tego kodu Javy jest nie dostępne dla mnie, dlatego nie mogę skompilować całego projektu.
Nie jestem zainteresowany dekompilacjÄ… oryginalnego projektu.

Jak szybko to zrobić używając tylko JDK i javac? (Przez wiersz poleceń jest to, co wolę.)

I zrozum, że w tym celu należy wyłączyć sprawdzanie błędów poza pojedynczym plikiem java, ponieważ nie może on odczytać zależności.

Z góry dzięki,
- Aidiakapi

EDIT: mam plik JAR, dzięki za odpowiedź:)

Author: Aidiakapi, 2011-02-11

2 answers

Musisz mieć jar(Y), który zawiera wszystkie rzeczy, od których zależy Twoja klasa, aby je skompilować.

Możesz następnie skompilować klasę za pomocą

javac -classpath jar1:jar2 mypackage.MyNewClass

Jeśli nie masz dostępu do oryginalnych jarów, będziesz musiał stworzyć makiety klas i metod itp. (które nie muszą nic robić, tylko być tam, aby Twoja Klasa się skompilowała) używając IDE może ułatwić oba procesy. (Po to jest;)

 15
Author: Peter Lawrey,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-02-11 14:35:42

Z tego, co rozumiem, chcesz ponownie skompilować pojedynczy plik Javy i zastąpić go w istniejącym pliku jar..

Więc kompilujesz..

cmd>javac -classpath jar1.jar;jar2.jar my.company.MyClassToReplace.java

I wymienić w słoiku.

cmd>jar uf myJarFile.jar my/company/MyClassToReplace.class

 19
Author: Oleg Pavliv,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-19 11:56:47