В этом уроке мы покажем вам, как использовать инструмент Gradle build для создания одного файла Jar с зависимостями.
Используемые инструменты:
- Ступень 2.0
- JDK 1.7
- Обратный вход 1.1.2
1. Каталог проектов
Создайте следующую структуру папок проекта:
По умолчанию Gradle использует стандартную структуру проекта Maven.
- ${Проект}/src/основной/java/
- ${Проект}/src/основные/ресурсы/
- ${Проект}/src/тест/java/
2. Файлы Java
Один файл Java для распечатки текущей даты и времени и записи сообщения в журнал с обратной регистрацией.
package com.mkyong; import java.util.Date; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class DateUtils{ private static final Logger logger = LoggerFactory.getLogger(DateUtils.class); public static void main(String[] args) { logger.debug("[MAIN] Current Date : {}", getCurrentDate()); System.out.println(getCurrentDate()); } private static Date getCurrentDate(){ return new Date(); } }
%-5level %logger{36} - %msg%n
3. Один файл Java для распечатки текущей даты и времени и записи сообщения в журнал с обратной регистрацией.
Образец build.gradle
для создания файла Jar вместе с его зависимостями для обратной регистрации.
apply plugin: 'java' apply plugin: 'eclipse' version = '1.0' sourceCompatibility = 1.7 targetCompatibility = 1.7 //create a single Jar with all dependencies task fatJar(type: Jar) { manifest { attributes 'Implementation-Title': 'Gradle Jar File Example', 'Implementation-Version': version, 'Main-Class': 'com.mkyong.DateUtils' } baseName = project.name + '-all' from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } with jar } //Get dependencies from Maven central repository repositories { mavenCentral() } //Project dependencies dependencies { compile 'ch.qos.logback:logback-classic:1.1.2' }
4. Создайте файл Jar
Очистите проект.
$ gradle clean
Запустите задачу Gradle FatJar
.
$ gradle fatJar :compileJava :processResources :classes :fatJar BUILD SUCCESSFUL Total time: 6.4 secs
Jar создается в папке $project/build/libs/|/.
5. Запустите Его
Запустите его – java-jar hello-all-1.0.jar
.
$Project\build\libs> java -jar hello-all-1.0.jar 16:22:13,249 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy] 16:22:13,249 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml] //... DEBUG com.mkyong.DateUtils - [MAIN] Current Date : Wed Aug 27 16:22:13 SGT 2014 Wed Aug 27 16:22:13 SGT 2014
Сделано.
Скачать Исходный Код
Рекомендации
Оригинал: “https://mkyong.com/gradle/gradle-create-a-jar-file-with-dependencies/”