Upgrade gradle wrapper to unblock android CI (#491)
* upgrade gradle wrapper to unblock android CI
* Revert "upgrade gradle wrapper to unblock android CI"
This reverts commit 4df4f253aa
.
* set timeout of gradlew
* "re-update it"
* Update gradle-wrapper.properties
* using gradle 8.0.1
* reformat the files
* fix the build.gradle issue
* one more fixing
* delay gradle starts
* rerun the pipeline
This commit is contained in:
Родитель
35408d94b6
Коммит
66be6bb640
|
@ -26,7 +26,8 @@ file(GLOB_RECURSE onnxruntime_extensions4j_gradle_files "${JAVA_ROOT}/*.gradle")
|
|||
file(GLOB_RECURSE onnxruntime_extensions4j_src "${JAVA_ROOT}/src/main/java/ai/onnxruntime/extensions/*.java")
|
||||
set(JAVA_OUTPUT_JAR ${JAVA_OUTPUT_TEMP}/build/libs/onnxruntime_extensions.jar)
|
||||
# this jar is solely used to signaling mechanism for dependency management in CMake
|
||||
# if any of the Java sources change, the jar (and generated headers) will be regenerated and the onnxruntime_extensions4j_jni target will be rebuilt
|
||||
# if any of the Java sources change, the jar (and generated headers) will be regenerated
|
||||
# and the onnxruntime_extensions4j_jni target will be rebuilt
|
||||
set(GRADLE_ARGS --console=plain clean jar -p ${JAVA_ROOT} -x test )
|
||||
if(WIN32)
|
||||
set(GRADLE_ARGS ${GRADLE_ARGS} -Dorg.gradle.daemon=false)
|
||||
|
@ -39,7 +40,8 @@ endif()
|
|||
|
||||
file(MAKE_DIRECTORY ${JAVA_OUTPUT_TEMP})
|
||||
add_custom_command(OUTPUT ${JAVA_OUTPUT_JAR}
|
||||
COMMAND ${GRADLE_EXECUTABLE} ${GRADLE_ARGS} WORKING_DIRECTORY ${JAVA_OUTPUT_TEMP} DEPENDS ${onnxruntime_extensions4j_gradle_files} ${onnxruntime_extensions4j_src})
|
||||
COMMAND ${GRADLE_EXECUTABLE} ${GRADLE_ARGS} WORKING_DIRECTORY ${JAVA_OUTPUT_TEMP}
|
||||
DEPENDS ${onnxruntime_extensions4j_gradle_files} ${onnxruntime_extensions4j_src} ortcustomops)
|
||||
add_custom_target(onnxruntime_extensions4j DEPENDS ${JAVA_OUTPUT_JAR})
|
||||
set_source_files_properties(${JAVA_OUTPUT_JAR} PROPERTIES GENERATED TRUE)
|
||||
set_property(TARGET onnxruntime_extensions4j APPEND PROPERTY ADDITIONAL_CLEAN_FILES "${JAVA_OUTPUT_DIR}")
|
||||
|
@ -139,11 +141,15 @@ if (WIN32)
|
|||
#Our static analysis plugin set /p:LinkCompiled=false
|
||||
if(NOT onnxruntime_extensions_ENABLE_STATIC_ANALYSIS)
|
||||
add_custom_command(TARGET onnxruntime_extensions4j_jni
|
||||
POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_FILE:onnxruntime_extensions4j_jni> ${JAVA_PACKAGE_JNI_DIR}/$<TARGET_FILE_NAME:onnxruntime_extensions4j_jni>)
|
||||
POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||||
$<TARGET_FILE:onnxruntime_extensions4j_jni>
|
||||
${JAVA_PACKAGE_JNI_DIR}/$<TARGET_FILE_NAME:onnxruntime_extensions4j_jni>)
|
||||
endif()
|
||||
else()
|
||||
add_custom_command(TARGET onnxruntime_extensions4j_jni
|
||||
POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_FILE:onnxruntime_extensions4j_jni> ${JAVA_PACKAGE_JNI_DIR}/$<TARGET_LINKER_FILE_NAME:onnxruntime_extensions4j_jni>)
|
||||
POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||||
$<TARGET_FILE:onnxruntime_extensions4j_jni>
|
||||
${JAVA_PACKAGE_JNI_DIR}/$<TARGET_LINKER_FILE_NAME:onnxruntime_extensions4j_jni>)
|
||||
endif()
|
||||
|
||||
# run the build process (this copies the results back into CMAKE_CURRENT_BINARY_DIR)
|
||||
|
@ -158,7 +164,8 @@ elseif (ANDROID)
|
|||
endif()
|
||||
|
||||
message(STATUS "GRADLE_ARGS: ${GRADLE_ARGS}")
|
||||
add_custom_command(TARGET onnxruntime_extensions4j_jni POST_BUILD COMMAND ${GRADLE_EXECUTABLE} ${GRADLE_ARGS} WORKING_DIRECTORY ${JAVA_OUTPUT_TEMP})
|
||||
add_custom_command(TARGET onnxruntime_extensions4j_jni
|
||||
POST_BUILD COMMAND ${GRADLE_EXECUTABLE} ${GRADLE_ARGS} WORKING_DIRECTORY ${JAVA_OUTPUT_TEMP})
|
||||
|
||||
if (ANDROID)
|
||||
set(ANDROID_PACKAGE_JNILIBS_DIR ${JAVA_OUTPUT_DIR}/android)
|
||||
|
|
|
@ -4,21 +4,21 @@ apply plugin: 'maven-publish'
|
|||
def jniLibsDir = System.properties['jniLibsDir']
|
||||
def buildDir = System.properties['buildDir']
|
||||
def publishDir = System.properties['publishDir']
|
||||
def minSdkVer = System.properties['minSdkVer']?:24
|
||||
def targetSdkVer = System.properties['targetSdkVer']?:32
|
||||
def ndkVer = System.properties['ndkVer']?:"25.1.8937393"
|
||||
def minSdkVer = System.properties['minSdkVer'] ?: 24
|
||||
def targetSdkVer = System.properties['targetSdkVer'] ?: 32
|
||||
def ndkVer = System.properties['ndkVer'] ?: "25.1.8937393"
|
||||
|
||||
// Since Android requires a higher numbers indicating more recent versions
|
||||
// This function assume ORT version number will be in formart of A.B.C such as 1.7.0
|
||||
// This function assume ORT version number will be in format of A.B.C such as 1.7.0
|
||||
// We generate version code A[0{0,1}]B[0{0,1}]C,
|
||||
// for example '1.7.0' -> 10700, '1.6.15' -> 10615
|
||||
def getVersionCode(String version){
|
||||
String[] code = version.split('\\-');
|
||||
String[] codes = code[0].split('\\.');
|
||||
// This will have problem if we have 3 digit [sub]version number, such as 1.7.199
|
||||
// but it is highly unlikely to happen
|
||||
String versionCodeStr = String.format("%d%02d%02d", codes[0] as int, codes[1] as int, codes[2] as int);
|
||||
return versionCodeStr as int;
|
||||
def getVersionCode(String version) {
|
||||
String[] code = version.split('\\-')
|
||||
String[] codes = code[0].split('\\.')
|
||||
// This will have problem if we have 3 digit [sub]version number, such as 1.7.199
|
||||
// but it is highly unlikely to happen
|
||||
String versionCodeStr = String.format("%d%02d%02d", codes[0] as int, codes[1] as int, codes[2] as int)
|
||||
return versionCodeStr as int
|
||||
}
|
||||
|
||||
project.buildDir = buildDir
|
||||
|
@ -28,136 +28,134 @@ project.version = rootProject.file('../version.txt').text.trim()
|
|||
def mavenArtifactId = project.name + '-android'
|
||||
|
||||
buildscript {
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:7.3.0'
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:7.3.0'
|
||||
|
||||
// NOTE: Do not place your application dependencies here; they belong
|
||||
// in the individual module build.gradle files
|
||||
}
|
||||
// NOTE: Do not place your application dependencies here; they belong
|
||||
// in the individual module build.gradle files
|
||||
}
|
||||
}
|
||||
|
||||
allprojects {
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion 32
|
||||
ndkVersion ndkVer
|
||||
defaultConfig {
|
||||
minSdkVersion minSdkVer
|
||||
targetSdkVersion targetSdkVer
|
||||
versionCode = getVersionCode(project.version)
|
||||
versionName = project.version
|
||||
compileSdkVersion 32
|
||||
ndkVersion ndkVer
|
||||
defaultConfig {
|
||||
minSdkVersion minSdkVer
|
||||
targetSdkVersion targetSdkVer
|
||||
versionCode = getVersionCode(project.version)
|
||||
versionName = project.version
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
|
||||
android {
|
||||
lintOptions {
|
||||
abortOnError false
|
||||
}
|
||||
}
|
||||
android {
|
||||
lintOptions {
|
||||
abortOnError false
|
||||
}
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
debuggable false
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
debuggable false
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
main {
|
||||
jniLibs.srcDirs = [jniLibsDir]
|
||||
}
|
||||
}
|
||||
sourceSets {
|
||||
main {
|
||||
jniLibs.srcDirs = [jniLibsDir]
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
task sourcesJar(type: Jar) {
|
||||
classifier "sources"
|
||||
from android.sourceSets.main.java.srcDirs
|
||||
archiveClassifier = "sources"
|
||||
from android.sourceSets.main.java.srcDirs
|
||||
}
|
||||
|
||||
task javadoc(type: Javadoc) {
|
||||
source = android.sourceSets.main.java.srcDirs
|
||||
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
|
||||
source = android.sourceSets.main.java.srcDirs
|
||||
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
|
||||
}
|
||||
|
||||
task javadocJar(type: Jar, dependsOn: javadoc) {
|
||||
classifier = 'javadoc'
|
||||
from javadoc.destinationDir
|
||||
archiveClassifier = 'javadoc'
|
||||
from javadoc.destinationDir
|
||||
}
|
||||
|
||||
artifacts {
|
||||
archives javadocJar
|
||||
archives sourcesJar
|
||||
archives javadocJar
|
||||
archives sourcesJar
|
||||
}
|
||||
|
||||
dependencies {
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
|
||||
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
|
||||
testImplementation 'com.google.protobuf:protobuf-java:3.20.1'
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
|
||||
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
|
||||
testImplementation 'com.google.protobuf:protobuf-java:3.21.7'
|
||||
}
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
maven(MavenPublication) {
|
||||
groupId = project.group
|
||||
artifactId = mavenArtifactId
|
||||
version = project.version
|
||||
project.afterEvaluate {
|
||||
publishing {
|
||||
publications {
|
||||
maven(MavenPublication) {
|
||||
from components.release
|
||||
groupId = project.group
|
||||
artifactId = mavenArtifactId
|
||||
version = project.version
|
||||
|
||||
// Three artifacts, the `aar`, the sources and the javadoc
|
||||
artifact("$buildDir/outputs/aar/${project.name}-release.aar")
|
||||
artifact javadocJar
|
||||
artifact sourcesJar
|
||||
pom {
|
||||
name = 'onnxruntime-extensions'
|
||||
description = 'ONNXRuntime-Extensions is a library for Android for pre- and post-processing.'
|
||||
url = 'https://microsoft.github.io/onnxruntime/'
|
||||
licenses {
|
||||
license {
|
||||
name = 'MIT License'
|
||||
url = 'https://opensource.org/licenses/MIT'
|
||||
}
|
||||
}
|
||||
organization {
|
||||
name = 'Microsoft'
|
||||
url = 'http://www.microsoft.com'
|
||||
}
|
||||
scm {
|
||||
connection = 'scm:git:git://github.com:microsoft/onnxruntime-extensions.git'
|
||||
developerConnection = 'scm:git:ssh://github.com/microsoft/onnxruntime-extensions.git'
|
||||
url = 'http://github.com/microsoft/onnxruntime-extensions'
|
||||
}
|
||||
developers {
|
||||
developer {
|
||||
id = 'onnxruntime'
|
||||
name = 'ONNX Runtime'
|
||||
email = 'onnxruntime@microsoft.com'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pom {
|
||||
name = 'onnxruntime-extensions'
|
||||
description = 'ONNXRuntime-Extensions is a library for Android for pre- and post-processing.'
|
||||
url = 'https://microsoft.github.io/onnxruntime/'
|
||||
licenses {
|
||||
license {
|
||||
name = 'MIT License'
|
||||
url = 'https://opensource.org/licenses/MIT'
|
||||
}
|
||||
}
|
||||
organization {
|
||||
name = 'Microsoft'
|
||||
url = 'http://www.microsoft.com'
|
||||
}
|
||||
scm {
|
||||
connection = 'scm:git:git://github.com:microsoft/onnxruntime-extensions.git'
|
||||
developerConnection = 'scm:git:ssh://github.com/microsoft/onnxruntime-extensions.git'
|
||||
url = 'http://github.com/microsoft/onnxruntime-extensions'
|
||||
}
|
||||
developers {
|
||||
developer {
|
||||
id = 'onnxruntime'
|
||||
name = 'ONNX Runtime'
|
||||
email = 'onnxruntime@microsoft.com'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//publish to filesystem repo
|
||||
repositories{
|
||||
maven {
|
||||
url "$publishDir"
|
||||
}
|
||||
}
|
||||
//publish to filesystem repo
|
||||
repositories {
|
||||
maven {
|
||||
url "$publishDir"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,16 +1,15 @@
|
|||
plugins {
|
||||
id 'java-library'
|
||||
id 'maven-publish'
|
||||
id 'signing'
|
||||
id 'jacoco'
|
||||
id 'com.diffplug.spotless' version '5.17.0'
|
||||
id 'java-library'
|
||||
id 'maven-publish'
|
||||
id 'signing'
|
||||
id 'jacoco'
|
||||
id 'com.diffplug.spotless' version '5.17.0'
|
||||
}
|
||||
|
||||
allprojects {
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
}
|
||||
|
||||
project.group = "com.microsoft.onnxruntime"
|
||||
|
@ -30,8 +29,8 @@ def mavenPwd = System.properties['mavenPwd']
|
|||
def mavenArtifactId = project.name
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
// This jar tasks serves as a CMAKE signalling
|
||||
|
@ -41,211 +40,207 @@ jar {
|
|||
|
||||
// Add explicit sources jar with pom file.
|
||||
task sourcesJar(type: Jar, dependsOn: classes) {
|
||||
classifier = "sources"
|
||||
from sourceSets.main.allSource
|
||||
into("META-INF/maven/$project.group/$mavenArtifactId") {
|
||||
from { generatePomFileForMavenPublication }
|
||||
rename ".*", "pom.xml"
|
||||
}
|
||||
archiveClassifier = "sources"
|
||||
from sourceSets.main.allSource
|
||||
into("META-INF/maven/$project.group/$mavenArtifactId") {
|
||||
from { generatePomFileForMavenPublication }
|
||||
rename ".*", "pom.xml"
|
||||
}
|
||||
}
|
||||
|
||||
// Add explicit javadoc jar with pom file
|
||||
task javadocJar(type: Jar, dependsOn: javadoc) {
|
||||
classifier = "javadoc"
|
||||
from javadoc.destinationDir
|
||||
into("META-INF/maven/$project.group/$mavenArtifactId") {
|
||||
from { generatePomFileForMavenPublication }
|
||||
rename ".*", "pom.xml"
|
||||
}
|
||||
}
|
||||
|
||||
wrapper {
|
||||
gradleVersion = '7.5.1'
|
||||
archiveClassifier = "javadoc"
|
||||
from javadoc.destinationDir
|
||||
into("META-INF/maven/$project.group/$mavenArtifactId") {
|
||||
from { generatePomFileForMavenPublication }
|
||||
rename ".*", "pom.xml"
|
||||
}
|
||||
}
|
||||
|
||||
spotless {
|
||||
java {
|
||||
removeUnusedImports()
|
||||
googleJavaFormat()
|
||||
}
|
||||
format 'gradle', {
|
||||
target '**/*.gradle'
|
||||
trimTrailingWhitespace()
|
||||
indentWithTabs()
|
||||
}
|
||||
java {
|
||||
removeUnusedImports()
|
||||
googleJavaFormat()
|
||||
}
|
||||
format 'gradle', {
|
||||
target '**/*.gradle'
|
||||
trimTrailingWhitespace()
|
||||
indentWithTabs()
|
||||
}
|
||||
}
|
||||
|
||||
compileJava {
|
||||
dependsOn spotlessJava
|
||||
options.compilerArgs += ["-h", "${project.buildDir}/headers/"]
|
||||
if (!JavaVersion.current().isJava8()) {
|
||||
// Ensures only methods present in Java 8 are used
|
||||
options.compilerArgs.addAll(['--release', '8'])
|
||||
// Gradle versions before 6.6 require that these flags are unset when using "-release"
|
||||
java.sourceCompatibility = null
|
||||
java.targetCompatibility = null
|
||||
}
|
||||
dependsOn spotlessJava
|
||||
options.compilerArgs += ["-h", "${project.buildDir}/headers/"]
|
||||
if (!JavaVersion.current().isJava8()) {
|
||||
// Ensures only methods present in Java 8 are used
|
||||
options.compilerArgs.addAll(['--release', '8'])
|
||||
// Gradle versions before 6.6 require that these flags are unset when using "-release"
|
||||
java.sourceCompatibility = null
|
||||
java.targetCompatibility = null
|
||||
}
|
||||
}
|
||||
|
||||
compileTestJava {
|
||||
if (!JavaVersion.current().isJava8()) {
|
||||
// Ensures only methods present in Java 8 are used
|
||||
options.compilerArgs.addAll(['--release', '8'])
|
||||
// Gradle versions before 6.6 require that these flags are unset when using "-release"
|
||||
java.sourceCompatibility = null
|
||||
java.targetCompatibility = null
|
||||
}
|
||||
if (!JavaVersion.current().isJava8()) {
|
||||
// Ensures only methods present in Java 8 are used
|
||||
options.compilerArgs.addAll(['--release', '8'])
|
||||
// Gradle versions before 6.6 require that these flags are unset when using "-release"
|
||||
java.sourceCompatibility = null
|
||||
java.targetCompatibility = null
|
||||
}
|
||||
}
|
||||
|
||||
sourceSets.test {
|
||||
// add test resource files
|
||||
resources.srcDirs += [
|
||||
"${rootProject.projectDir}/../java/testdata"
|
||||
]
|
||||
if (cmakeBuildDir != null) {
|
||||
// add compiled native libs
|
||||
resources.srcDirs += [
|
||||
cmakeNativeLibDir,
|
||||
cmakeNativeJniDir,
|
||||
cmakeNativeTestDir
|
||||
]
|
||||
}
|
||||
// add test resource files
|
||||
resources.srcDirs += [
|
||||
"${rootProject.projectDir}/../java/testdata"
|
||||
]
|
||||
if (cmakeBuildDir != null) {
|
||||
// add compiled native libs
|
||||
resources.srcDirs += [
|
||||
cmakeNativeLibDir,
|
||||
cmakeNativeJniDir,
|
||||
cmakeNativeTestDir
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
if (cmakeBuildDir != null) {
|
||||
// generate tasks to be called from cmake
|
||||
// generate tasks to be called from cmake
|
||||
|
||||
// Overwrite jar location
|
||||
task allJar(type: Jar) {
|
||||
manifest {
|
||||
attributes('Automatic-Module-Name': project.group,
|
||||
'Implementation-Title': 'onnxruntime-extensions',
|
||||
'Implementation-Version': project.version)
|
||||
}
|
||||
into("META-INF/maven/$project.group/$mavenArtifactId") {
|
||||
from { generatePomFileForMavenPublication }
|
||||
rename ".*", "pom.xml"
|
||||
}
|
||||
from sourceSets.main.output
|
||||
from cmakeNativeJniDir
|
||||
from cmakeNativeLibDir
|
||||
}
|
||||
// Overwrite jar location
|
||||
task allJar(type: Jar) {
|
||||
manifest {
|
||||
attributes('Automatic-Module-Name': project.group,
|
||||
'Implementation-Title': 'onnxruntime-extensions',
|
||||
'Implementation-Version': project.version)
|
||||
}
|
||||
into("META-INF/maven/$project.group/$mavenArtifactId") {
|
||||
from { generatePomFileForMavenPublication }
|
||||
rename ".*", "pom.xml"
|
||||
}
|
||||
from sourceSets.main.output
|
||||
from cmakeNativeJniDir
|
||||
from cmakeNativeLibDir
|
||||
}
|
||||
|
||||
task cmakeBuild(type: Copy) {
|
||||
from project.buildDir
|
||||
include 'libs/**'
|
||||
include 'docs/**'
|
||||
into cmakeBuildOutputDir
|
||||
}
|
||||
cmakeBuild.dependsOn allJar
|
||||
cmakeBuild.dependsOn sourcesJar
|
||||
cmakeBuild.dependsOn javadocJar
|
||||
cmakeBuild.dependsOn javadoc
|
||||
task cmakeBuild(type: Copy) {
|
||||
from project.buildDir
|
||||
include 'libs/**'
|
||||
include 'docs/**'
|
||||
into cmakeBuildOutputDir
|
||||
}
|
||||
cmakeBuild.dependsOn allJar
|
||||
cmakeBuild.dependsOn sourcesJar
|
||||
cmakeBuild.dependsOn javadocJar
|
||||
cmakeBuild.dependsOn javadoc
|
||||
|
||||
task cmakeCheck(type: Copy) {
|
||||
from project.buildDir
|
||||
include 'reports/**'
|
||||
into cmakeBuildOutputDir
|
||||
}
|
||||
cmakeCheck.dependsOn check
|
||||
task cmakeCheck(type: Copy) {
|
||||
from project.buildDir
|
||||
include 'reports/**'
|
||||
into cmakeBuildOutputDir
|
||||
}
|
||||
cmakeCheck.dependsOn check
|
||||
}
|
||||
|
||||
dependencies {
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
|
||||
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
|
||||
testImplementation 'com.google.protobuf:protobuf-java:3.20.1'
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
|
||||
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
|
||||
testImplementation 'com.google.protobuf:protobuf-java:3.20.1'
|
||||
}
|
||||
|
||||
processTestResources {
|
||||
duplicatesStrategy(DuplicatesStrategy.INCLUDE) // allows duplicates in the test resources
|
||||
duplicatesStrategy(DuplicatesStrategy.INCLUDE) // allows duplicates in the test resources
|
||||
}
|
||||
|
||||
test {
|
||||
java {
|
||||
dependsOn spotlessJava
|
||||
}
|
||||
if (System.getProperty("JAVA_FULL_TEST") != null) {
|
||||
// Forces each test class to be run in a separate JVM,
|
||||
// which is necessary for testing the environment thread pool which is ignored if full test is not set.
|
||||
forkEvery 1
|
||||
}
|
||||
useJUnitPlatform()
|
||||
if (cmakeBuildDir != null) {
|
||||
workingDir cmakeBuildDir
|
||||
}
|
||||
systemProperties System.getProperties().subMap(['JAVA_FULL_TEST'])
|
||||
testLogging {
|
||||
events "passed", "skipped", "failed"
|
||||
showStandardStreams = true
|
||||
showStackTraces = true
|
||||
exceptionFormat = "full"
|
||||
}
|
||||
java {
|
||||
dependsOn spotlessJava
|
||||
}
|
||||
if (System.getProperty("JAVA_FULL_TEST") != null) {
|
||||
// Forces each test class to be run in a separate JVM,
|
||||
// which is necessary for testing the environment thread pool which is ignored if full test is not set.
|
||||
forkEvery 1
|
||||
}
|
||||
useJUnitPlatform()
|
||||
if (cmakeBuildDir != null) {
|
||||
workingDir cmakeBuildDir
|
||||
}
|
||||
systemProperties System.getProperties().subMap(['JAVA_FULL_TEST'])
|
||||
testLogging {
|
||||
events "passed", "skipped", "failed"
|
||||
showStandardStreams = true
|
||||
showStackTraces = true
|
||||
exceptionFormat = "full"
|
||||
}
|
||||
}
|
||||
|
||||
jacocoTestReport {
|
||||
reports {
|
||||
xml.enabled true
|
||||
csv.enabled true
|
||||
html.destination file("${buildDir}/jacocoHtml")
|
||||
}
|
||||
reports {
|
||||
xml.required = true
|
||||
csv.required = true
|
||||
html.destination file("${buildDir}/jacocoHtml")
|
||||
}
|
||||
}
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
maven(MavenPublication) {
|
||||
groupId = project.group
|
||||
artifactId = mavenArtifactId
|
||||
version = project.version
|
||||
publications {
|
||||
maven(MavenPublication) {
|
||||
groupId = project.group
|
||||
artifactId = mavenArtifactId
|
||||
version = project.version
|
||||
|
||||
from components.java
|
||||
pom {
|
||||
name = 'onnxruntime-extensions'
|
||||
description = 'ONNXRuntime-Extensions is a library for pre- and post-processing.'
|
||||
url = 'https://microsoft.github.io/onnxruntime/'
|
||||
licenses {
|
||||
license {
|
||||
name = 'MIT License'
|
||||
url = 'https://opensource.org/licenses/MIT'
|
||||
}
|
||||
}
|
||||
organization {
|
||||
name = 'Microsoft'
|
||||
url = 'http://www.microsoft.com'
|
||||
}
|
||||
scm {
|
||||
connection = 'scm:git:git://github.com:microsoft/onnxruntime-extensions.git'
|
||||
developerConnection = 'scm:git:ssh://github.com/microsoft/onnxruntime-extensions.git'
|
||||
url = 'http://github.com/microsoft/onnxruntime-extensions'
|
||||
}
|
||||
developers {
|
||||
developer {
|
||||
id = 'onnxruntime'
|
||||
name = 'ONNX Runtime'
|
||||
email = 'onnxruntime@microsoft.com'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
repositories {
|
||||
maven {
|
||||
url 'https://oss.sonatype.org/service/local/staging/deploy/maven2/'
|
||||
credentials {
|
||||
username mavenUser
|
||||
password mavenPwd
|
||||
}
|
||||
}
|
||||
}
|
||||
from components.java
|
||||
pom {
|
||||
name = 'onnxruntime-extensions'
|
||||
description = 'ONNXRuntime-Extensions is a library for pre- and post-processing.'
|
||||
url = 'https://microsoft.github.io/onnxruntime/'
|
||||
licenses {
|
||||
license {
|
||||
name = 'MIT License'
|
||||
url = 'https://opensource.org/licenses/MIT'
|
||||
}
|
||||
}
|
||||
organization {
|
||||
name = 'Microsoft'
|
||||
url = 'http://www.microsoft.com'
|
||||
}
|
||||
scm {
|
||||
connection = 'scm:git:git://github.com:microsoft/onnxruntime-extensions.git'
|
||||
developerConnection = 'scm:git:ssh://github.com/microsoft/onnxruntime-extensions.git'
|
||||
url = 'http://github.com/microsoft/onnxruntime-extensions'
|
||||
}
|
||||
developers {
|
||||
developer {
|
||||
id = 'onnxruntime'
|
||||
name = 'ONNX Runtime'
|
||||
email = 'onnxruntime@microsoft.com'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
repositories {
|
||||
maven {
|
||||
url 'https://oss.sonatype.org/service/local/staging/deploy/maven2/'
|
||||
credentials {
|
||||
username mavenUser
|
||||
password mavenPwd
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Generates a task signMavenPublication that will
|
||||
// build all artifacts.
|
||||
signing {
|
||||
// Queries env vars:
|
||||
// ORG_GRADLE_PROJECT_signingKey
|
||||
// ORG_GRADLE_PROJECT_signingPassword but can be changed to properties
|
||||
def signingKey = findProperty("signingKey")
|
||||
def signingPassword = findProperty("signingPassword")
|
||||
useInMemoryPgpKeys(signingKey, signingPassword)
|
||||
sign publishing.publications.maven
|
||||
// Queries env vars:
|
||||
// ORG_GRADLE_PROJECT_signingKey
|
||||
// ORG_GRADLE_PROJECT_signingPassword but can be changed to properties
|
||||
def signingKey = findProperty("signingKey")
|
||||
def signingPassword = findProperty("signingPassword")
|
||||
useInMemoryPgpKeys(signingKey, signingPassword)
|
||||
sign publishing.publications.maven
|
||||
}
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
# Project-wide Gradle settings.
|
||||
# IDE (e.g. Android Studio) users:
|
||||
# Gradle settings configured through the IDE *will override*
|
||||
# any settings specified in this file.
|
||||
# For more details on how to configure your build environment visit
|
||||
# http://www.gradle.org/docs/current/userguide/build_environment.html
|
||||
# Specifies the JVM arguments used for the daemon process.
|
||||
# The setting is particularly useful for tweaking memory settings.
|
||||
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
|
||||
# When configured, Gradle will run in incubating parallel mode.
|
||||
# This option should only be used with decoupled projects. More details, visit
|
||||
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
|
||||
# org.gradle.parallel=true
|
||||
# AndroidX package structure to make it clearer which packages are bundled with the
|
||||
# Android operating system, and which are packaged with your app's APK
|
||||
# https://developer.android.com/topic/libraries/support-library/androidx-rn
|
||||
android.useAndroidX=true
|
||||
# Enables namespacing of each library's R class so that its R class includes only the
|
||||
# resources declared in the library itself and none from the library's dependencies,
|
||||
# thereby reducing the size of the R class for that library
|
||||
android.nonTransitiveRClass=true
|
Двоичный файл не отображается.
|
@ -1,6 +1,7 @@
|
|||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionSha256Sum=f6b8596b10cce501591e92f229816aa4046424f3b24d771751b06779d58c8ec4
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
|
||||
distributionSha256Sum=1b6b558be93f29438d3df94b7dfee02e794b94d9aca4611a92cdb79b6b88e909
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-bin.zip
|
||||
networkTimeout=10000
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
@rem limitations under the License.
|
||||
@rem
|
||||
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@if "%DEBUG%"=="" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
|
@ -25,7 +25,7 @@
|
|||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
if "%DIRNAME%"=="" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
|
@ -40,7 +40,7 @@ if defined JAVA_HOME goto findJavaFromJavaHome
|
|||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto execute
|
||||
if %ERRORLEVEL% equ 0 goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
@ -75,13 +75,15 @@ set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
|||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
if %ERRORLEVEL% equ 0 goto mainEnd
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
||||
exit /b 1
|
||||
set EXIT_CODE=%ERRORLEVEL%
|
||||
if %EXIT_CODE% equ 0 set EXIT_CODE=1
|
||||
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
|
||||
exit /b %EXIT_CODE%
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
|
Загрузка…
Ссылка в новой задаче