mirror of
https://github.com/pgpainless/pgpainless.git
synced 2024-12-23 03:17:58 +01:00
Switch from gradle to maven build system
This commit is contained in:
parent
4dbc633d7d
commit
1363f075c3
12 changed files with 514 additions and 499 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -10,6 +10,9 @@ build/
|
||||||
bin/
|
bin/
|
||||||
libs/
|
libs/
|
||||||
|
|
||||||
|
target/
|
||||||
|
*/target/
|
||||||
|
|
||||||
*.iws
|
*.iws
|
||||||
*.iml
|
*.iml
|
||||||
*.ipr
|
*.ipr
|
||||||
|
|
324
build.gradle
324
build.gradle
|
@ -1,324 +0,0 @@
|
||||||
// SPDX-FileCopyrightText: 2021 Paul Schaub <info@pgpainless.org>
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
buildscript {
|
|
||||||
|
|
||||||
repositories {
|
|
||||||
|
|
||||||
maven {
|
|
||||||
url "https://plugins.gradle.org/m2/"
|
|
||||||
}
|
|
||||||
mavenLocal()
|
|
||||||
mavenCentral()
|
|
||||||
}
|
|
||||||
dependencies {
|
|
||||||
classpath "gradle.plugin.org.kt3k.gradle.plugin:coveralls-gradle-plugin:2.12.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
plugins {
|
|
||||||
id 'org.jetbrains.kotlin.jvm' version "1.8.10"
|
|
||||||
id 'com.diffplug.spotless' version '6.22.0' apply false
|
|
||||||
}
|
|
||||||
|
|
||||||
apply from: 'version.gradle'
|
|
||||||
|
|
||||||
allprojects {
|
|
||||||
apply plugin: 'java'
|
|
||||||
apply plugin: 'idea'
|
|
||||||
apply plugin: 'eclipse'
|
|
||||||
apply plugin: 'jacoco'
|
|
||||||
apply plugin: 'checkstyle'
|
|
||||||
apply plugin: 'kotlin'
|
|
||||||
apply plugin: 'com.diffplug.spotless'
|
|
||||||
|
|
||||||
java {
|
|
||||||
targetCompatibility = JavaVersion.VERSION_1_8
|
|
||||||
}
|
|
||||||
|
|
||||||
compileJava {
|
|
||||||
options.release = 8
|
|
||||||
}
|
|
||||||
|
|
||||||
// Only generate jar for submodules
|
|
||||||
// without this we would generate an empty pgpainless.jar for the project root
|
|
||||||
// https://stackoverflow.com/a/25445035
|
|
||||||
jar {
|
|
||||||
onlyIf { !sourceSets.main.allSource.files.isEmpty() }
|
|
||||||
}
|
|
||||||
|
|
||||||
// checkstyle
|
|
||||||
checkstyle {
|
|
||||||
toolVersion = '10.12.1'
|
|
||||||
}
|
|
||||||
|
|
||||||
spotless {
|
|
||||||
kotlin {
|
|
||||||
ktfmt().dropboxStyle()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
group 'org.pgpainless'
|
|
||||||
description = "Simple to use OpenPGP API for Java based on Bouncycastle"
|
|
||||||
version = shortVersion
|
|
||||||
|
|
||||||
sourceCompatibility = javaSourceCompatibility
|
|
||||||
|
|
||||||
repositories {
|
|
||||||
mavenCentral()
|
|
||||||
mavenLocal()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Reproducible Builds
|
|
||||||
tasks.withType(AbstractArchiveTask) {
|
|
||||||
preserveFileTimestamps = false
|
|
||||||
reproducibleFileOrder = true
|
|
||||||
|
|
||||||
dirMode = 0755
|
|
||||||
fileMode = 0644
|
|
||||||
}
|
|
||||||
|
|
||||||
// Compatibility of default implementations in kotlin interfaces with Java implementations.
|
|
||||||
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
|
|
||||||
kotlinOptions {
|
|
||||||
freeCompilerArgs += ["-Xjvm-default=all-compatibility"]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
project.ext {
|
|
||||||
rootConfigDir = new File(rootDir, 'config')
|
|
||||||
gitCommit = getGitCommit()
|
|
||||||
isContinuousIntegrationEnvironment = Boolean.parseBoolean(System.getenv('CI'))
|
|
||||||
isReleaseVersion = !isSnapshot
|
|
||||||
signingRequired = !(isSnapshot || isContinuousIntegrationEnvironment)
|
|
||||||
sonatypeCredentialsAvailable = project.hasProperty('sonatypeUsername') && project.hasProperty('sonatypePassword')
|
|
||||||
sonatypeSnapshotUrl = 'https://oss.sonatype.org/content/repositories/snapshots'
|
|
||||||
sonatypeStagingUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2'
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isSnapshot) {
|
|
||||||
version = version + '-SNAPSHOT'
|
|
||||||
}
|
|
||||||
def projectDirFile = new File("$projectDir")
|
|
||||||
if (!project.ext.isSnapshot && !'git describe --exact-match HEAD'.execute(null, projectDirFile).text.trim().equals(ext.shortVersion)) {
|
|
||||||
throw new InvalidUserDataException('Untagged version detected! Please tag every release.')
|
|
||||||
}
|
|
||||||
if (!version.endsWith('-SNAPSHOT') && version != 'git tag --points-at HEAD'.execute(null, projectDirFile).text.trim()) {
|
|
||||||
throw new InvalidUserDataException(
|
|
||||||
'Tag mismatch detected, version is ' + version + ' but should be ' +
|
|
||||||
'git tag --points-at HEAD'.execute(null, projectDirFile).text.trim())
|
|
||||||
}
|
|
||||||
|
|
||||||
jacoco {
|
|
||||||
toolVersion = "0.8.8"
|
|
||||||
}
|
|
||||||
|
|
||||||
jacocoTestReport {
|
|
||||||
dependsOn test
|
|
||||||
sourceDirectories.setFrom(project.files(sourceSets.main.allSource.srcDirs))
|
|
||||||
classDirectories.setFrom(project.files(sourceSets.main.output))
|
|
||||||
reports {
|
|
||||||
xml.enabled true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
test {
|
|
||||||
useJUnitPlatform()
|
|
||||||
testLogging {
|
|
||||||
events "passed", "skipped", "failed"
|
|
||||||
exceptionFormat "full"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
subprojects {
|
|
||||||
apply plugin: 'maven-publish'
|
|
||||||
apply plugin: 'signing'
|
|
||||||
|
|
||||||
task sourcesJar(type: Jar, dependsOn: classes) {
|
|
||||||
classifier = 'sources'
|
|
||||||
from sourceSets.main.allSource
|
|
||||||
}
|
|
||||||
task javadocJar(type: Jar, dependsOn: javadoc) {
|
|
||||||
classifier = 'javadoc'
|
|
||||||
from javadoc.destinationDir
|
|
||||||
}
|
|
||||||
task testsJar(type: Jar, dependsOn: testClasses) {
|
|
||||||
classifier = 'tests'
|
|
||||||
from sourceSets.test.output
|
|
||||||
}
|
|
||||||
|
|
||||||
publishing {
|
|
||||||
publications {
|
|
||||||
mavenJava(MavenPublication) {
|
|
||||||
from components.java
|
|
||||||
artifact sourcesJar
|
|
||||||
artifact javadocJar
|
|
||||||
artifact testsJar
|
|
||||||
pom {
|
|
||||||
name = 'PGPainless'
|
|
||||||
description = 'Simple to use OpenPGP API for Java based on Bouncycastle'
|
|
||||||
url = 'https://github.com/pgpainless/pgpainless'
|
|
||||||
inceptionYear = '2018'
|
|
||||||
|
|
||||||
scm {
|
|
||||||
url = 'https://github.com/pgpainless/pgpainless'
|
|
||||||
connection = 'scm:https://github.com/pgpainless/pgpainless'
|
|
||||||
developerConnection = 'scm:git://github.com/pgpainless/pgpainless.git'
|
|
||||||
}
|
|
||||||
|
|
||||||
licenses {
|
|
||||||
license {
|
|
||||||
name = 'The Apache Software License, Version 2.0'
|
|
||||||
url = 'http://www.apache.org/licenses/LICENSE-2.0.txt'
|
|
||||||
distribution = 'repo'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
developers {
|
|
||||||
developer {
|
|
||||||
id = 'vanitasvitae'
|
|
||||||
name = 'Paul Schaub'
|
|
||||||
email = 'vanitasvitae@fsfe.org'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
repositories {
|
|
||||||
if (sonatypeCredentialsAvailable) {
|
|
||||||
maven {
|
|
||||||
url isSnapshot ? sonatypeSnapshotUrl : sonatypeStagingUrl
|
|
||||||
credentials {
|
|
||||||
username = sonatypeUsername
|
|
||||||
password = sonatypePassword
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
signing {
|
|
||||||
useGpgCmd()
|
|
||||||
required { signingRequired }
|
|
||||||
sign publishing.publications.mavenJava
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
def getGitCommit() {
|
|
||||||
def projectDirFile = new File("$projectDir")
|
|
||||||
def dotGit = new File("$projectDir/.git")
|
|
||||||
if (!dotGit.isDirectory()) return 'non-git build'
|
|
||||||
|
|
||||||
def cmd = 'git describe --always --tags --dirty=+'
|
|
||||||
def proc = cmd.execute(null, projectDirFile)
|
|
||||||
def gitCommit = proc.text.trim()
|
|
||||||
assert !gitCommit.isEmpty()
|
|
||||||
|
|
||||||
def srCmd = 'git symbolic-ref --short HEAD'
|
|
||||||
def srProc = srCmd.execute(null, projectDirFile)
|
|
||||||
srProc.waitForOrKill(10 * 1000)
|
|
||||||
if (srProc.exitValue() == 0) {
|
|
||||||
// Only add the information if the git command was
|
|
||||||
// successful. There may be no symbolic reference for HEAD if
|
|
||||||
// e.g. in detached mode.
|
|
||||||
def symbolicReference = srProc.text.trim()
|
|
||||||
assert !symbolicReference.isEmpty()
|
|
||||||
gitCommit += "-$symbolicReference"
|
|
||||||
}
|
|
||||||
|
|
||||||
gitCommit
|
|
||||||
}
|
|
||||||
|
|
||||||
apply plugin: "com.github.kt3k.coveralls"
|
|
||||||
coveralls {
|
|
||||||
sourceDirs = files(subprojects.sourceSets.main.allSource.srcDirs).files.absolutePath
|
|
||||||
}
|
|
||||||
|
|
||||||
task jacocoRootReport(type: JacocoReport) {
|
|
||||||
dependsOn = subprojects.jacocoTestReport
|
|
||||||
sourceDirectories.setFrom(files(subprojects.sourceSets.main.allSource.srcDirs))
|
|
||||||
classDirectories.setFrom(files(subprojects.sourceSets.main.output))
|
|
||||||
executionData.setFrom(files(subprojects.jacocoTestReport.executionData))
|
|
||||||
reports {
|
|
||||||
xml.enabled true
|
|
||||||
xml.destination file("${buildDir}/reports/jacoco/test/jacocoTestReport.xml")
|
|
||||||
}
|
|
||||||
// We could remove the following setOnlyIf line, but then
|
|
||||||
// jacocoRootReport would silently be SKIPPED if something with
|
|
||||||
// the projectsWithUnitTests is wrong (e.g. a project is missing
|
|
||||||
// in there).
|
|
||||||
setOnlyIf { true }
|
|
||||||
}
|
|
||||||
|
|
||||||
task javadocAll(type: Javadoc) {
|
|
||||||
def currentJavaVersion = JavaVersion.current()
|
|
||||||
if (currentJavaVersion.compareTo(JavaVersion.VERSION_1_9) >= 0) {
|
|
||||||
options.addStringOption("-release", "8");
|
|
||||||
}
|
|
||||||
source subprojects.collect {project ->
|
|
||||||
project.sourceSets.main.allJava }
|
|
||||||
destinationDir = new File(buildDir, 'javadoc')
|
|
||||||
// Might need a classpath
|
|
||||||
classpath = files(subprojects.collect {project ->
|
|
||||||
project.sourceSets.main.compileClasspath})
|
|
||||||
options.linkSource = true
|
|
||||||
options.use = true
|
|
||||||
options.links = [
|
|
||||||
"https://docs.oracle.com/javase/${sourceCompatibility.getMajorVersion()}/docs/api/",
|
|
||||||
] as String[]
|
|
||||||
}
|
|
||||||
|
|
||||||
if (JavaVersion.current().isJava8Compatible()) {
|
|
||||||
tasks.withType(Javadoc) {
|
|
||||||
// The '-quiet' as second argument is actually a hack,
|
|
||||||
// since the one paramater addStringOption doesn't seem to
|
|
||||||
// work, we extra add '-quiet', which is added anyway by
|
|
||||||
// gradle. See https://github.com/gradle/gradle/issues/2354
|
|
||||||
// See JDK-8200363 (https://bugs.openjdk.java.net/browse/JDK-8200363)
|
|
||||||
// for information about the -Xwerror option.
|
|
||||||
options.addStringOption('Xwerror', '-quiet')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Fetch sha256 checksums of artifacts published to maven central.
|
|
||||||
*
|
|
||||||
* Example: gradle -Prelease=1.3.13 mavenCentralChecksums
|
|
||||||
*/
|
|
||||||
task mavenCentralChecksums() {
|
|
||||||
description 'Fetch and display checksums for artifacts published to Maven Central'
|
|
||||||
String ver = project.hasProperty('release') ? release : shortVersion
|
|
||||||
doLast {
|
|
||||||
Process p = "curl -f https://repo1.maven.org/maven2/org/pgpainless/pgpainless-core/${ver}/pgpainless-core-${ver}.jar.sha256".execute()
|
|
||||||
if (p.waitFor() == 0) {
|
|
||||||
print p.text.trim()
|
|
||||||
println " pgpainless-core/build/libs/pgpainless-core-${ver}.jar"
|
|
||||||
}
|
|
||||||
|
|
||||||
p = "curl -f https://repo1.maven.org/maven2/org/pgpainless/pgpainless-sop/${ver}/pgpainless-sop-${ver}.jar.sha256".execute()
|
|
||||||
if (p.waitFor() == 0) {
|
|
||||||
print p.text.trim()
|
|
||||||
println " pgpainless-sop/build/libs/pgpainless-sop-${ver}.jar"
|
|
||||||
}
|
|
||||||
|
|
||||||
p = "curl -f https://repo1.maven.org/maven2/org/pgpainless/pgpainless-cli/${ver}/pgpainless-cli-${ver}-all.jar.sha256".execute()
|
|
||||||
if (p.waitFor() == 0) {
|
|
||||||
print p.text.trim()
|
|
||||||
println " pgpainless-cli/build/libs/pgpainless-cli-${ver}-all.jar"
|
|
||||||
}
|
|
||||||
|
|
||||||
p = "curl -f https://repo1.maven.org/maven2/org/pgpainless/pgpainless-cli/${ver}/pgpainless-cli-${ver}.jar.sha256".execute()
|
|
||||||
if (p.waitFor() == 0) {
|
|
||||||
print p.text.trim()
|
|
||||||
println " pgpainless-cli/build/libs/pgpainless-cli-${ver}.jar"
|
|
||||||
}
|
|
||||||
|
|
||||||
p = "curl -f https://repo1.maven.org/maven2/org/pgpainless/hsregex/${ver}/hsregex-${ver}.jar.sha256".execute()
|
|
||||||
if (p.waitFor() == 0) {
|
|
||||||
print p.text.trim()
|
|
||||||
println " hsregex/build/libs/hsregex-${ver}.jar"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,60 +0,0 @@
|
||||||
// SPDX-FileCopyrightText: 2021 Paul Schaub <vanitasvitae@fsfe.org>
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
plugins {
|
|
||||||
id 'application'
|
|
||||||
id "com.github.johnrengelman.shadow" version "6.1.0"
|
|
||||||
}
|
|
||||||
|
|
||||||
dependencies {
|
|
||||||
|
|
||||||
testImplementation(project(":pgpainless-core"))
|
|
||||||
|
|
||||||
testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion"
|
|
||||||
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitVersion"
|
|
||||||
|
|
||||||
// implementation "ch.qos.logback:logback-core:1.2.6"
|
|
||||||
// We want logback logging in tests and in the app
|
|
||||||
testImplementation "ch.qos.logback:logback-classic:$logbackVersion"
|
|
||||||
implementation "ch.qos.logback:logback-classic:$logbackVersion"
|
|
||||||
|
|
||||||
implementation(project(":pgpainless-sop"))
|
|
||||||
implementation "org.pgpainless:sop-java-picocli:$sopJavaVersion"
|
|
||||||
|
|
||||||
// https://mvnrepository.com/artifact/com.google.code.findbugs/jsr305
|
|
||||||
implementation group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.2'
|
|
||||||
}
|
|
||||||
|
|
||||||
mainClassName = 'org.pgpainless.cli.PGPainlessCLI'
|
|
||||||
|
|
||||||
application {
|
|
||||||
mainClass = mainClassName
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
jar {
|
|
||||||
duplicatesStrategy(DuplicatesStrategy.EXCLUDE)
|
|
||||||
manifest {
|
|
||||||
attributes 'Main-Class': "$mainClassName"
|
|
||||||
}
|
|
||||||
|
|
||||||
from {
|
|
||||||
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
|
|
||||||
} {
|
|
||||||
exclude "META-INF/*.SF"
|
|
||||||
exclude "META-INF/*.DSA"
|
|
||||||
exclude "META-INF/*.RSA"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
run {
|
|
||||||
// https://stackoverflow.com/questions/59445306/pipe-into-gradle-run
|
|
||||||
standardInput = System.in
|
|
||||||
// https://discuss.gradle.org/t/how-can-i-provide-command-line-args-to-application-started-with-gradle-run/6474/5
|
|
||||||
if (project.hasProperty("appArgs")) {
|
|
||||||
args Eval.me(appArgs)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// tasks."jar".dependsOn(":pgpainless-core:assemble", ":pgpainless-sop:assemble")
|
|
74
pgpainless-cli/pom.xml
Normal file
74
pgpainless-cli/pom.xml
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<parent>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>pgpainless-parent</artifactId>
|
||||||
|
<version>1.7.3-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<artifactId>pgpainless-cli</artifactId>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
<mainClass>org.pgpainless.cli.PGPainlessCLI</mainClass>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>ch.qos.logback</groupId>
|
||||||
|
<artifactId>logback-classic</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>pgpainless-sop</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>sop-java-picocli</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.findbugs</groupId>
|
||||||
|
<artifactId>jsr305</artifactId>
|
||||||
|
<scope>runtime</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter-api</artifactId>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<!-- Assembly -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
<version>${maven.assembly.plugin.version}</version>
|
||||||
|
<configuration>
|
||||||
|
<descriptorRefs>
|
||||||
|
<descriptorRef>jar-with-dependencies</descriptorRef>
|
||||||
|
</descriptorRefs>
|
||||||
|
<archive>
|
||||||
|
<manifest>
|
||||||
|
<mainClass>${mainClass}</mainClass>
|
||||||
|
</manifest>
|
||||||
|
</archive>
|
||||||
|
</configuration>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>make-assembly</id>
|
||||||
|
<phase>package</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>single</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</project>
|
|
@ -1,36 +0,0 @@
|
||||||
// SPDX-FileCopyrightText: 2021 Paul Schaub <vanitasvitae@fsfe.org>
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
plugins {
|
|
||||||
id 'java-library'
|
|
||||||
}
|
|
||||||
|
|
||||||
dependencies {
|
|
||||||
// JUnit
|
|
||||||
testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion"
|
|
||||||
testImplementation "org.junit.jupiter:junit-jupiter-params:$junitVersion"
|
|
||||||
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitVersion"
|
|
||||||
|
|
||||||
// Mocking Components
|
|
||||||
testImplementation "org.mockito:mockito-core:$mockitoVersion"
|
|
||||||
|
|
||||||
// Logging
|
|
||||||
api "org.slf4j:slf4j-api:$slf4jVersion"
|
|
||||||
testImplementation "ch.qos.logback:logback-classic:$logbackVersion"
|
|
||||||
|
|
||||||
// Bouncy Castle
|
|
||||||
api "org.bouncycastle:bcprov-jdk18on:$bouncyCastleVersion"
|
|
||||||
api "org.bouncycastle:bcpg-jdk18on:$bouncyPgVersion"
|
|
||||||
// api(files("../libs/bcpg-jdk18on-1.70.jar"))
|
|
||||||
|
|
||||||
// @Nullable, @Nonnull annotations
|
|
||||||
implementation "com.google.code.findbugs:jsr305:3.0.2"
|
|
||||||
}
|
|
||||||
|
|
||||||
// https://docs.gradle.org/current/userguide/java_library_plugin.html#sec:java_library_modular_auto
|
|
||||||
tasks.named('jar') {
|
|
||||||
manifest {
|
|
||||||
attributes('Automatic-Module-Name': 'org.pgpainless.core')
|
|
||||||
}
|
|
||||||
}
|
|
112
pgpainless-core/pom.xml
Normal file
112
pgpainless-core/pom.xml
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<parent>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>pgpainless-parent</artifactId>
|
||||||
|
<version>1.7.3-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<artifactId>pgpainless-core</artifactId>
|
||||||
|
<packaging>jar</packaging>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jetbrains.kotlin</groupId>
|
||||||
|
<artifactId>kotlin-stdlib</artifactId>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>sop-java</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.bouncycastle</groupId>
|
||||||
|
<artifactId>bcprov-jdk18on</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.bouncycastle</groupId>
|
||||||
|
<artifactId>bcpg-jdk18on</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.bouncycastle</groupId>
|
||||||
|
<artifactId>bcutil-jdk18on</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-api</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.findbugs</groupId>
|
||||||
|
<artifactId>jsr305</artifactId>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- JUnit -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jetbrains.kotlin</groupId>
|
||||||
|
<artifactId>kotlin-test-junit5</artifactId>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter-api</artifactId>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter-params</artifactId>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter-engine</artifactId>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter</artifactId>
|
||||||
|
<version>${junit.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Mockito -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.mockito</groupId>
|
||||||
|
<artifactId>mockito-core</artifactId>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.testng</groupId>
|
||||||
|
<artifactId>testng</artifactId>
|
||||||
|
<version>7.10.2</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<!-- Kotlin Compile -->
|
||||||
|
<plugin>
|
||||||
|
<artifactId>kotlin-maven-plugin</artifactId>
|
||||||
|
<groupId>org.jetbrains.kotlin</groupId>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
</project>
|
|
@ -1,49 +0,0 @@
|
||||||
// SPDX-FileCopyrightText: 2021 Paul Schaub <vanitasvitae@fsfe.org>
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
import org.apache.tools.ant.filters.*
|
|
||||||
plugins {
|
|
||||||
id 'java-library'
|
|
||||||
}
|
|
||||||
|
|
||||||
group 'org.pgpainless'
|
|
||||||
|
|
||||||
repositories {
|
|
||||||
mavenCentral()
|
|
||||||
mavenLocal()
|
|
||||||
}
|
|
||||||
|
|
||||||
dependencies {
|
|
||||||
testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion"
|
|
||||||
testImplementation "org.junit.jupiter:junit-jupiter-params:$junitVersion"
|
|
||||||
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitVersion"
|
|
||||||
|
|
||||||
// Logging
|
|
||||||
testImplementation "ch.qos.logback:logback-classic:$logbackVersion"
|
|
||||||
|
|
||||||
// Depend on "shared" sop-java test suite (fixtures are turned into tests by inheritance inside test sources)
|
|
||||||
testImplementation(testFixtures("org.pgpainless:sop-java:$sopJavaVersion"))
|
|
||||||
|
|
||||||
implementation(project(":pgpainless-core"))
|
|
||||||
api "org.pgpainless:sop-java:$sopJavaVersion"
|
|
||||||
|
|
||||||
implementation "com.google.code.findbugs:jsr305:3.0.2"
|
|
||||||
}
|
|
||||||
|
|
||||||
processResources {
|
|
||||||
filter ReplaceTokens, tokens: [
|
|
||||||
"project.version": project.version.toString()
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
test {
|
|
||||||
useJUnitPlatform()
|
|
||||||
environment("test.implementation", "sop.testsuite.pgpainless.PGPainlessSopInstanceFactory")
|
|
||||||
}
|
|
||||||
|
|
||||||
// https://docs.gradle.org/current/userguide/java_library_plugin.html#sec:java_library_modular_auto
|
|
||||||
tasks.named('jar') {
|
|
||||||
manifest {
|
|
||||||
attributes('Automatic-Module-Name': 'org.pgpainless.sop')
|
|
||||||
}
|
|
||||||
}
|
|
73
pgpainless-sop/pom.xml
Normal file
73
pgpainless-sop/pom.xml
Normal file
|
@ -0,0 +1,73 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<parent>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>pgpainless-parent</artifactId>
|
||||||
|
<version>1.7.3-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<artifactId>pgpainless-sop</artifactId>
|
||||||
|
<packaging>jar</packaging>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>sop-java</artifactId>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>sop-java-testfixtures</artifactId>
|
||||||
|
<version>10.0.3-SNAPSHOT</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>pgpainless-core</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.findbugs</groupId>
|
||||||
|
<artifactId>jsr305</artifactId>
|
||||||
|
<scope>runtime</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<resources>
|
||||||
|
<resource>
|
||||||
|
<directory>src/main/resources</directory>
|
||||||
|
<filtering>true</filtering>
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
<version>3.2.2</version>
|
||||||
|
<configuration>
|
||||||
|
<environmentVariables>
|
||||||
|
<test.implementation>sop.testsuite.pgpainless.PGPainlessSopInstanceFactory</test.implementation>
|
||||||
|
</environmentVariables>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.jetbrains.kotlin</groupId>
|
||||||
|
<artifactId>kotlin-maven-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</project>
|
|
@ -1 +1 @@
|
||||||
pgpainless-sop-version=@project.version@
|
pgpainless-sop-version=${project.version}
|
||||||
|
|
251
pom.xml
Normal file
251
pom.xml
Normal file
|
@ -0,0 +1,251 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>pgpainless-parent</artifactId>
|
||||||
|
<version>1.7.3-SNAPSHOT</version>
|
||||||
|
<packaging>pom</packaging>
|
||||||
|
|
||||||
|
<modules>
|
||||||
|
<module>pgpainless-core</module>
|
||||||
|
<module>pgpainless-sop</module>
|
||||||
|
<module>pgpainless-cli</module>
|
||||||
|
</modules>
|
||||||
|
|
||||||
|
<name>PGPainless</name>
|
||||||
|
<description>Simple to use OpenPGP API for Java based on Bouncycastle</description>
|
||||||
|
<url>https://github.com/pgpainless/pgpainless</url>
|
||||||
|
<inceptionYear>2018</inceptionYear>
|
||||||
|
<licenses>
|
||||||
|
<license>
|
||||||
|
<name>The Apache Software License, Version 2.0</name>
|
||||||
|
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
||||||
|
<distribution>repo</distribution>
|
||||||
|
</license>
|
||||||
|
</licenses>
|
||||||
|
<developers>
|
||||||
|
<developer>
|
||||||
|
<id>vanitasvitae</id>
|
||||||
|
<name>Paul Schaub</name>
|
||||||
|
<email>vanitasvitae@fsfe.org</email>
|
||||||
|
</developer>
|
||||||
|
</developers>
|
||||||
|
<scm>
|
||||||
|
<connection>scm:https://github.com/pgpainless/pgpainless</connection>
|
||||||
|
<developerConnection>scm:git://github.com/pgpainless/pgpainless.git</developerConnection>
|
||||||
|
<url>https://github.com/pgpainless/pgpainless</url>
|
||||||
|
</scm>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
<java.version>1.8</java.version>
|
||||||
|
<kotlin.version>1.8.10</kotlin.version>
|
||||||
|
|
||||||
|
<maven.compiler.source>${java.version}</maven.compiler.source>
|
||||||
|
<maven.compiler.target>${java.version}</maven.compiler.target>
|
||||||
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
<maven.assembly.plugin.version>3.3.0</maven.assembly.plugin.version>
|
||||||
|
<bouncycastle.version>1.78.1</bouncycastle.version>
|
||||||
|
<sop-java.version>10.0.3</sop-java.version>
|
||||||
|
<slf4j.version>1.7.36</slf4j.version>
|
||||||
|
<junit.version>5.8.2</junit.version>
|
||||||
|
<mockito.version>4.5.1</mockito.version>
|
||||||
|
|
||||||
|
<project.build.outputTimestamp>2023-01-01T00:00:00Z</project.build.outputTimestamp>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencyManagement>
|
||||||
|
<dependencies>
|
||||||
|
<!-- Kotlin -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jetbrains.kotlin</groupId>
|
||||||
|
<artifactId>kotlin-stdlib</artifactId>
|
||||||
|
<version>${kotlin.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jetbrains.kotlin</groupId>
|
||||||
|
<artifactId>kotlin-test-junit5</artifactId>
|
||||||
|
<version>${kotlin.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jetbrains.kotlin</groupId>
|
||||||
|
<artifactId>kotlin-reflect</artifactId>
|
||||||
|
<version>${kotlin.version}</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Bouncy Castle -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.bouncycastle</groupId>
|
||||||
|
<artifactId>bcprov-jdk18on</artifactId>
|
||||||
|
<version>${bouncycastle.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.bouncycastle</groupId>
|
||||||
|
<artifactId>bcpg-jdk18on</artifactId>
|
||||||
|
<version>${bouncycastle.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.bouncycastle</groupId>
|
||||||
|
<artifactId>bcutil-jdk18on</artifactId>
|
||||||
|
<version>${bouncycastle.version}</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- SOP-Java -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>sop-java</artifactId>
|
||||||
|
<version>${sop-java.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>sop-java-testfixtures</artifactId>
|
||||||
|
<version>${sop-java.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.pgpainless</groupId>
|
||||||
|
<artifactId>sop-java-picocli</artifactId>
|
||||||
|
<version>${sop-java.version}</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- SLF4J -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-api</artifactId>
|
||||||
|
<version>${slf4j.version}</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- @Nullable, @Nonnull -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.findbugs</groupId>
|
||||||
|
<artifactId>jsr305</artifactId>
|
||||||
|
<version>3.0.2</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Test -->
|
||||||
|
<!-- JUnit -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter-engine</artifactId>
|
||||||
|
<version>${junit.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter-params</artifactId>
|
||||||
|
<version>${junit.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter-api</artifactId>
|
||||||
|
<version>${junit.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Mockito -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.mockito</groupId>
|
||||||
|
<artifactId>mockito-core</artifactId>
|
||||||
|
<version>${mockito.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Logback -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>ch.qos.logback</groupId>
|
||||||
|
<artifactId>logback-classic</artifactId>
|
||||||
|
<version>1.5.0</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
</dependencies>
|
||||||
|
</dependencyManagement>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<!-- Plugins -->
|
||||||
|
<plugins>
|
||||||
|
</plugins>
|
||||||
|
|
||||||
|
<!-- Shared plugin configuration -->
|
||||||
|
<pluginManagement>
|
||||||
|
<plugins>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.jetbrains.kotlin</groupId>
|
||||||
|
<artifactId>kotlin-maven-plugin</artifactId>
|
||||||
|
<version>${kotlin.version}</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>compile</id>
|
||||||
|
<phase>process-sources</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>compile</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<sourceDirs>
|
||||||
|
<source>src/main/java</source>
|
||||||
|
<source>src/main/kotlin</source>
|
||||||
|
</sourceDirs>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>test-compile</id>
|
||||||
|
<phase>process-test-sources</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>test-compile</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<sourceDirs>
|
||||||
|
<source>src/test/java</source>
|
||||||
|
<source>src/test/kotlin</source>
|
||||||
|
<source>src/test/resources</source>
|
||||||
|
</sourceDirs>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
<configuration>
|
||||||
|
<jvmTarget>${java.version}</jvmTarget>
|
||||||
|
<args>
|
||||||
|
<arg>-Xjvm-default=all-compatibility</arg>
|
||||||
|
</args>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>default-compile</id>
|
||||||
|
<phase>none</phase>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>default-testCompile</id>
|
||||||
|
<phase>none</phase>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>compile</id>
|
||||||
|
<phase>compile</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>compile</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>testCompile</id>
|
||||||
|
<phase>test-compile</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>testCompile</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
<configuration>
|
||||||
|
<source>${java.version}</source>
|
||||||
|
<target>${java.version}</target>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</pluginManagement>
|
||||||
|
</build>
|
||||||
|
</project>
|
|
@ -1,10 +0,0 @@
|
||||||
// SPDX-FileCopyrightText: 2021 Paul Schaub <info@pgpainless.org>
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: CC0-1.0
|
|
||||||
|
|
||||||
rootProject.name = 'PGPainless'
|
|
||||||
|
|
||||||
include 'pgpainless-core',
|
|
||||||
'pgpainless-sop',
|
|
||||||
'pgpainless-cli'
|
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
// SPDX-FileCopyrightText: 2021 Paul Schaub <info@pgpainless.org>
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: CC0-1.0
|
|
||||||
|
|
||||||
allprojects {
|
|
||||||
ext {
|
|
||||||
shortVersion = '1.7.3'
|
|
||||||
isSnapshot = true
|
|
||||||
pgpainlessMinAndroidSdk = 10
|
|
||||||
javaSourceCompatibility = 1.8
|
|
||||||
bouncyCastleVersion = '1.78.1'
|
|
||||||
bouncyPgVersion = bouncyCastleVersion
|
|
||||||
junitVersion = '5.8.2'
|
|
||||||
logbackVersion = '1.5.13'
|
|
||||||
mockitoVersion = '4.5.1'
|
|
||||||
slf4jVersion = '1.7.36'
|
|
||||||
sopJavaVersion = '10.0.3'
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in a new issue