IntelliJ基于Grandle通过GUI Form创建Swing项目的过程
解决maven打包时手动添加的依赖jar包打不进去的情况
gradle 插件脚本配置举例
buildscript {
repositories {
maven { url 'xxxx'}
}
}
plugins {
id "java"
id "org.jetbrains.intellij" version "1.12.0"
id "org.jetbrains.kotlin.jvm" version "1.8.0"
id "jacoco"
}
apply plugin: 'idea'
apply plugin: 'java'
apply plugin: 'org.jetbrains.intellij'
apply plugin: 'jacoco'
group 'xxx'
projects {
intellij {
version = "2022.3.2"
type = "IC"
plugins = ["com.intellij.java", "Subversion"]
buildSearchableOptions.enabled = false
}
sourceCompatibility = 17
compileJava.options.encoding = 'UTF-8'
compileTestJava.options.encoding = 'UTF-8'
configurations.compileOnly.canBeResolved = true
configurations.configureEach {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
repositories {
maven { url 'xxxx'}
maven { url 'xxxx'}
}
sourceSets {
main.java.srcDirs 'src/main/java'
main.resources.srcDirs 'src/main/resources'
test.java.srcDirs 'src/test/java'
}
tasks.register('sourcesJar', Jar) {
archiveClassifier = 'sources'
from sourceSets.main.allSource
}
artifacts {
archives jar
archives sourcesJar
}
dependencies {
}
}
tasks.withType(Copy).configureEach {
duplicatesStrategy 'exclude'
}
tasks.withType(JavaExec) {
jvmArgs = ['-Xmx4g']
}
patchPluginXml {
sinceBuild.set("223.8617.56")
untilBuild.set("223.*")
}
jacoco {
toolVersion = "0.8.10"
reportsDirectory.set(layout.buildDirectory.dir("jacoco"))
}
tasks {
prepareSandbox {
from("lib") {
into("")
}
}
tasks.register('testReport', TestReport) {
destinationDir = file("$buildDir/")
}
jacocoTestReport {
dependsOn test
reports {
html.enabled true
xml.enabled true
csv.enabled false
}
}
test {
useJUnitPlatform()
ignoreFailures true // 测试用例执行失败不影响整个工程构建成功。
jacoco {
includeNoLocationClasses = true
excludes = ["jdk.internal.*"]
}
reports {
junitXml {
outputPerTestCase = true // defaults to false
mergeReruns = true // defaults to false
}
}
}
}
浙公网安备 33010602011771号