Найкоротша інструкція. Пишемо найпростіший тестовий додаток, допустимо "Hi Amigo!" у файл HiAmigo.txt 100 разів.
public class Main {
public static void main(String[] args) throws IOException {
File file = new File("C:\\temp\\HiAmigo.txt");
FileWriter fileWriter = new FileWriter(file);
for (int i = 0; i < 100 ; i++) {
fileWriter.write("Hi Amigo! \n");
}
fileWriter.close();
}
}
Перевіряємо що все працює на цьому етапі (це важливо!) Ідемо File -> Project Structure -> Artifacts -> + JAR -> From Modules with dependencies . > Build З'являється наш артефакт: Вилучаємо наш тестовий файл "C:\temp\HiAmigo.txt" і запускаємо JAR. Файл має з'явитися ще раз. Якщо з'явився – все прибл. Їдемо далі. Качаємо тулзу з сайту https://launch4j.sourceforge.net/ (Рекомендую версію 3.14, потім поясню чому). Встановлюємо запускаємо. Нам потрібні два поля. Вказуємо наш JAR та куди класти готовий .exe Зараз найцікавіше. Уявіть ситуацію, що на машині де ми плануємо використовувати нашу програму не встановлена JRE і немає можливості її встановити. Таке часто буває з міркувань безпеки. До того ж добре було б забезпечити наш додаток вищим рівнем автономності. Робимо таке. Створюємо окремий каталог для нашої програми, хай OurApp. Усередині створюємо папку JRE. Качаємо JRE (в моєму прикладі нехай буде jre-8u361-windows-i586) встановлюємо кудись (якщо це готовий архів розархівуємо) і висмикуємо з неї всі файли. Копіюємо все в \OurApp\JRE\ має вийти приблизно так: У Launch4j переходимо у вкладку JRE і в поле Bundled JRE paths: вказуємо ім'я каталогу JRE Тиснемо на шестерню і вибираємо будь-який файл для збереження конфігурації типу file.xml Після натискання на save з'явиться наш exe. Копіюємо exe і кладемо поруч із папкою JRE Видаляємо тестовий C:\temp\HiAmigo.txt. Запускаємо exe і дивимося, як створюється новий. От і все. Тепер каталог можна OurApp можна архівувати та передавати куди завгодно, exe відпрацює. Важливо: Версія JRE у папці має бути не нижчою за ту, на якій білдився артефакт. Перевірте поле: У моєму випадку виникли проблеми сумісності з x86 платформою і я використовував версію враппера 3.14, тому що в ній можна вказувати тип цільової архітектури. Загалом дякую всім за увагу. То була моя перша стаття-інструкція, прошу не судити суворо. Всім мир!
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ