在应用程序构建或打包时,排除Temurin JDK中的libjli.dylib文件。以下是在Gradle构建脚本中实现的示例代码:
buildscript {
repositories {
maven {
url 'https://maven.aliyun.com/repository/public'
}
mavenCentral()
}
dependencies {
classpath 'com.apple:apple-sdk:1.3'
}
}
tasks.withType(AbstractArchiveTask) {
doLast {
if (project.hasProperty('notarize')) {
def notarizeUsername = project.property('notarizeUsername')
def notarizePassword = project.property('notarizePassword')
def notarizeStaple = project.property('notarizeStaple')
def file = outputFile
println "notarizing $file"
def altool = '/usr/bin/xcrun altool --notarize-app -f ' + file + ' --primary-bundle-id ' + project.group + '.' + project.name + '-u ' + notarizeUsername + ' -p ' + notarizePassword
if (notarizeStaple) {
altool = altool + ' --staple'
}
def proc = altool.execute()
proc.waitFor()
println 'Upload completed successfully. Check the log for details.'
}
}
}
task zip(type: Zip) {
from 'src'
archiveName 'example.zip'
}
tasks.named('jar') {
exclude("**/libjli.dylib")
}
在上述示例中,将Temurin JDK中的libjli.dylib文件排除在应用程序打包过程之外,任务框架将为你完成这个操作。