Gradle 构建Java项目(IDEA环境)
1)创建构建脚本-添加依赖
2)构建 Java 项目
src/main/java
搜寻打包源码,在
src/test/java
下搜寻测试源码。
src/main/resources
下的所有文件按都会被打包,
src/test/resources
下的文件 都会被添加到类路径用以执行测试。所有文件都输出到 build 下,打包的文件输出到 build/libs 下;
墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
900+累计阅读
997平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄11年
//project的group、version信息
group 'site.assad'
version '1.0'
//使用插件
apply plugin: 'java'
sourceCompatibility = 1.8
//使用的外部源
repositories {
mavenCentral()
}
//添加项目依赖
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.11'
testCompile group: 'junit', name: 'junit', version: '4.12'
}
project
├ build //存放构建输出
├ src
| ├ main //存放源代码和资源
| | ├ java //源代码
| | └ resources //项目资源
| └ test //存放测试代码和资源
| ├ java
| └ resources
├ build.gradle //构建脚本
└ settings.gradle
src/main/java
搜寻打包源码,在
src/test/java
下搜寻测试源码。
src/main/resources
下的所有文件按都会被打包,
src/test/resources
下的文件 都会被添加到类路径用以执行测试。所有文件都输出到 build 下,打包的文件输出到 build/libs 下;
| build | 构建项目,并将 src/main/ 目录下的 class 和资源文件打包 |
| clean | 删除 build 目录以及所有构建完成的文件。 |
| assemble | 编译并打包 jar 文件,但不会执行单元测试。一些其他插件可能会增强这个任务的功能。例如,如果采用了 War 插件,这个任务便会为你的项目打出 War 包。 |
| check | 编译并测试代码。一些其他插件也可能会增强这个任务的功能。例如,如果采用了 Code-quality 插件,这个任务会额外执行 Checkstyle。 |
project
├ build
├ src
| ├ main
| | ├ java
| | ├ resources
| | ├ webapp //web App 目录
| | └ index.jsp
| └ test
| ├ java
| └ resources
├ build.gradle //构建脚本
└ settings.gradle
project
├ build
├ src
| ├ main
| | ├ java
| | ├ resources
| | └ webapp //web App 目录
| | ├ WEB-INF
| | | └ web.xml
| | └ index.jsp
| └ test
| ├ java
| └ resources
├ build.gradle //构建脚本
└ settings.gradle
group 'site.assad'
version '1.0'
apply plugin: 'java' //使用Java插件
apply plugin: 'war' //使用war插件
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.11'
testCompile group: 'junit', name: 'junit', version: '4.12'
}
war{
archiveName = 'testDemo.war' //手动配置 war 包名称
}
Gradle 4.0离线安装包:全面优化的构建工具
稳定API,顾名思义,是指在一定时期内保持稳定不变的API。它们为外部用户提供了一种保证,即在一段合理的时间内,应用程序可以依赖这些API进行开发,无需担心接口的突然变更导致的不兼容问题。稳定API的存在对于项目外部的开发者来说至关重要,它可以帮助他们减少维护成本,提高开发效率,并在生态系统中构建起信任感。
Gradle学习笔记之build.gradle文件
是gradle构建脚本文件,支持java、groovy等语言。每个gradle项目或模块都会有一个文件,该文件是项目构建的入口,可配置版本、插件依赖库等信息。每个build文件都有一个对应的project实例,配置文件,实际就是设置project实例里面的属性,或者调用里面的方法。根项目的project实例可以获取到所有子项目或子模块的project实例,因此我们可以在根项目的文件中对子项目进行统一配置,比如应用插件、依赖的maven中心仓库等,常见的Project和Task。
Gradle 4.1 构建工具的完整离线安装包
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建工具。它使用一种基于Groovy的特定领域语言来声明项目设置,比传统的XML更加简洁和灵活。虽然启用并行构建相对容易,但根据项目的具体情况,可能需要更细致的控制并行任务的行为。Gradle提供了丰富的API来帮助开发者自定义并行任务的配置。例如,可以通过修改构建配置文件来控制并行执行的线程数,以及为特定任务设置优先级:maxHeapSize = '512M' // 设置最大堆内存为512MB。
Gradle 进阶学习 之 build.gradle 文件
build.gradle 是什么? 想象一下,你有一个大型的乐高项目,你需要一个清单来列出所有的乐高积木和它们如何组合在一起。在软件开发中,build.gradle 就是这个清单,它告诉计算机如何构建(组合)你的软件项目。
淘宝扫码登录避坑指南:如何避免异地登录风控并稳定获取Cookie(附Python代码)
本文深入解析了淘宝扫码登录的风控机制,提供了从环境仿真到代码实现的完整避坑指南。通过精细化伪装请求头、管理会话与IP策略,并附上Python示例代码,帮助开发者稳定获取Cookie,有效避免异地登录风控,实现自动化流程的可靠集成。
IMDb影评数据集:从下载到情感分析实战指南
本文提供了IMDb影评数据集从下载、探索到情感分析建模的完整实战指南。详细介绍了数据预处理、TF-IDF向量化方法,并对比了逻辑回归、随机森林、SVM及LSTM深度学习模型在情感分析任务上的应用与效果评估,帮助读者系统掌握自然语言处理的核心流程。
Gradle生成WAR包及部署Tomcat
Gradle生成WAR包及部署Tomcat 配置构建脚本 build.gradle apply plugin: 'war' War 属性配置 war { archiveName 'ProjectName.war' from 'SubprojectName/build/dist' } war包名称 from 为引入子项目(Gradle Multi-project Bui...
电子设计实战:用MOS管手把手搭建D触发器电路(含时序分析避坑指南)
本文详细介绍了如何使用MOS管从零开始搭建D触发器电路,重点解析了建立时间和保持时间等关键时序参数对电路稳定性的影响。通过实测波形分析和避坑指南,帮助电子工程师掌握D触发器的实际搭建技巧与优化方法,提升数字电路设计的可靠性。
springboot使用Gradle打war包
1. 使用spring boot initializr创建一个restful API项目(springboot官网示例项目https://spring.io/guides/gs/rest-service/)。确保可以直接使用jar包成功运行。运行类代码: import org.springframework.boot.SpringApplication; import org.spring...
支持找回微信删除好友!一款人人可用的全能微信数据分析工具
找回删除好友、查看删除记录、恢复聊天信息....
【机器学习】一文搞懂算法模型之:Transformer
必会算法模型之:Transformer
Spring Boot使用Gradle构建war
前言 因为之前搭建到服务器的博客系统使使用spring boot自带的插件运行的,所以响应速度慢到无以复加。这次的目的是将项目构建成war包,然后发布到服务器。所以下面就是构建war包的一些步骤。步骤1. build.gradle中添加依赖providedCompile("org.springframework.boot:spring-boot-starter-tomcat")注:如果...
YOLOv11改进有效涨点专栏目录 | 含卷积、主干、注意力机制、Neck、检测头、损失函数、二次创新C2PSA/C3k2等各种网络结构改进
Hello,各位读者们好.本文为最新YOLOv11有效涨点专栏目录,YOLOv11以及发布了一个月左右,这个过程中我也是给大家整理了许多的机制,其中包含了C3k2、主干(均支持根据yolov11训练的版本进行二次缩放,全系列都能轻量化)、检测头、注意力机制、Neck多种结构上创新,也有损失函数和一些细节点上的创新。
Gradle 9.4+Java26:大型项目构建提速100倍实战配置
咱就是说,等构建等到花儿都谢了这事儿,简直是每个Java程序员的集体PTSD。你改了一行代码,按下编译,然后看着那个进度条开始怀疑人生——去倒杯水吧,水都凉了还没完;刷会儿短视频吧,算法都给你推了八条"如何防止脱发"的广告,Gradle还在那儿吭哧吭哧地下载依赖。说真的,大型项目的构建慢,就跟北京早高峰的地铁一样,大家都深受其苦但好像只能忍着。但今天我要告诉你,2026年这波技术更新(对,就是前两周刚发布的Java 26和Gradle 9.4这对黄金搭档),咱们终于不用再忍了。
AI颠覆市场调研:生成式智能体如何重构商业决策?
AI正在将市场调研从"成本中心"转变为"战略武器"。当企业能够用生成式智能体实时模拟百万级虚拟用户时,传统调研的样本偏差、时间滞后、成本高昂等问题将不复存在。对于开发者而言,这不仅是技术的狂欢,更是参与商业规则重构的历史机遇。行动建议立即体验Simile/Aaru的智能体平台,验证虚拟样本效果参与LLM持续性记忆架构的开源项目(如Memory Llama)关注AI调研API的标准化进程(如Hugging Face的Market Research Toolkit)
Python爬虫实战:新浪财经股票金融数据全方位抓取教程
本教程系统介绍了新浪财经股票数据爬取技术,从静态网页解析、实时接口请求到异步爬取和数据存储,帮助你搭建了一个完整的金融数据采集流程。未来,可以结合深度学习模型进行行情预测,或者将数据接入量化交易系统,实现自动化投资。
gradle学习(4)-构建java项目
1.认识plugin 告诉gradle某个项目是特殊的项目。比如java和android 2.定义java项目 apply plugin: 'java' 就一步就可以定义一个java项目。上面就是告诉gradle我需要你准备java项目所需的组件来满足需求。 3.java项目的目录结构 存放java源码的目录:src/main/java
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
【亲测免费】 Gradle 7.4.2 全版本极速下载:高效构建的利器
Gradle 7.4.2 全版本极速下载:高效构建的利器 【下载地址】Gradle7.4.2全版本极速下载 Gradle 7.4.2 全版本极速下载 项目地址: https://gitcode.com/open-source-to...
深度学习工具包 DeepLearningToolbox
深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[](https://bitdeli.com/free "Bitdeli Badge")
TMS_WebGMaps_1.9.8.0_Full_Source
TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder
Gradle 5.4.1 完整版本下载:项目的核心功能/场景
Gradle 5.4.1 完整版本下载:项目的核心功能/场景 【下载地址】Gradle5.4.1完整版本下载 本项目提供了 Gradle 5.4.1 完整版本的下载资源,包含压缩包 `gradle-5.4.1-all.zip` 及对应的校验文件 `gradle-5.4.1-all.zip.sha256`,确保文件的完整性...
【免费下载】 Gradle 8.4 完整版快速下载:提升 JVM 项目开发效率的利器
Gradle 8.4 完整版快速下载:提升 JVM 项目开发效率的利器 【下载地址】Gradle8.4完整版快速下载 Gradle 8.4 完整版快速下载本仓库提供 Gradle 8.4 完整版(`gradle-8.4-all.zip`)的快速下载链接 ...
解决痛点:高效获取Gradle 5.4.1,加速您的Java项目开发流程
解决痛点:高效获取Gradle 5.4.1,加速您的Java项目开发流程 【下载地址】Gradle5.4.1完整版下载仓库分享 Gradle 5.4.1 完整版下载仓库本仓库提供了一个资源文件的下载,旨在解决Gradle下载速度过慢的问题 ...
Gradle 5.6.4 二进制包:高效构建,稳定可靠
Gradle 5.6.4 二进制包:高效构建,稳定可靠 【下载地址】Gradle5.6.4二进制包 Gradle 5.6.4 是一款功能强大的自动化构建工具,专为提升开发效率而生。作为官方发布的稳定版本,它以卓越的性能和构建速度著称,广泛应用于 Android、Java 项目及其他多语言开发。通过 Groovy 的领域特...
【六袆 - Gradle】初始化Gradle项目;第一次初始化gradle项目;
初始化Gradle的第一个项目
Gradle-Launch4j 项目使用教程
Gradle-Launch4j 项目使用教程 项目介绍 Gradle-Launch4j 是一个 Gradle 插件,用于通过 Launch4j 创建 Windows 可执行文件。Launch4j 是一个跨平台的工具,可以将 Java 应用程序包装成 Windows 的 .exe 文件。Gradle-Launch4j 插件使得在 Gradle 构建过程中集成 Launch4j 变得非常简单。 项目快...
sqlite4java下载_我如何设置一个使用sqlite4java的简单的gradle项目?
我正在使用sqlite4java启动一个简单的java测试项目,并使用java构建.我可以轻松下载下载的sqlite4java软件库,但我不知道最好的(任何!)的方法来下载本地库并将它们放在正确的位置.这是我的build.gradle文件:apply plugin: 'java'/* We use Java 1.7 */sourceCompatibility = 1.7targetCompatib...
Gradle二进制发行版7.4.2:构建项目的利器
Gradle二进制发行版7.4.2:构建项目的利器 去发现同类优质开源项目:https://gitcode.com/ Gradle 7.4.2 是一款功能强大的自动化构建工具,适用于多种编程语言项目,如 Java、Groovy、Kotlin 等。本文将为您详细介绍 Gradle 7.4.2 二进制发行版的核心功能、技术分析、应用场景及项目特点。 项目介绍 Gradle 是一个开源的自动化构建工具,...

被折叠的 条评论
为什么被折叠?



