Gradle 7.4 失败,Applet 已被弃用并标记为删除
Gradle 7.4 fails with Applet been deprecated and marked for removal
Eclipse 挂在我身上,所以我恢复到 gradle 构建。 Gradle 类 失败并显示以下错误消息。
我在项目目录中确实有一个 gradle.properties 文件,其中包含:“org.gradle.warning.mode=none”。 Eclipse 通常可以很好地运行代码和测试。
我不关心在任何地方收到警告。我确实想阻止构建失败。
下面的构建文件有很多我现在没有使用的额外内容。
编辑 1:添加 @SuppressWarnings("removal") 似乎有效。
C:\Users\raz\git\code\src\simplegui\InsetsDemo.java:4: warning: [removal] Applet in java.appl
et has been deprecated and marked for removal
public class InsetsDemo extends Applet {
^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
构建文件:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.hidetake:gradle-ssh-plugin:1.1.2'
}
}
plugins {
id 'java'
id 'checkstyle'
id 'distribution'
id 'application'
}
repositories {
mavenCentral()
}
sourceSets {
main {
main.java.srcDirs = ["src"]
main.resources.srcDirs = ["resources"]
}
test {
test.java.srcDirs = ["tst"] // removed slow/ as it was very.
}
}
dependencies {
testImplementation 'junit:junit:4.13.2'
}
jar {
manifest {
attributes 'Main-Class': MyStuff.main
}
}
run {
standardInput = System.in
}
targetCompatibility = "16"
sourceCompatibility = "16"
version = '0.1'
mainClassName = MyStuff.main // for application plugin
class MyStuff {
public static final String main="com.tayek.utilities.Dispatcher";
}
您的构建真的因为弃用警告而失败了吗?正如奥利弗在评论中指出的那样,只有当您 运行 javac
带有 -Werror
选项时才会出现这种情况。但即使您使用了那个选项,消息看起来也会有所不同——可能像这样:
error: warnings found and -Werror specified
1 error
1 warning
据我所知,这个弃用警告似乎是在转移注意力。只是为了确定:您的构建是否完全失败?当您 运行 ./gradlew classes
时,Gradle 是否报告了类似以下的内容……
> Compilation failed; see the compiler error output for details.
…接着是“BUILD FAILED”?
如果 Gradle 为该命令报告“BUILD SUCCESSFUL”,则警告不是问题。如果在 运行 执行其他任务时您的构建仍然失败(例如,作为 ./gradlew build
的一部分),那么日志中 应该 是其他错误。如果没有,则尝试添加 --stacktrace
选项以希望获得有关实际错误的更多详细信息。
就是说,如果您只想(完全)摆脱该警告,那么根据 this SO answer,您唯一的选择是向 [=18= 添加一个 @SuppressWarnings("deprecation")
注释] class。否则警告是“Java 语言规范强制要求的。”
Eclipse 挂在我身上,所以我恢复到 gradle 构建。 Gradle 类 失败并显示以下错误消息。
我在项目目录中确实有一个 gradle.properties 文件,其中包含:“org.gradle.warning.mode=none”。 Eclipse 通常可以很好地运行代码和测试。
我不关心在任何地方收到警告。我确实想阻止构建失败。
下面的构建文件有很多我现在没有使用的额外内容。
编辑 1:添加 @SuppressWarnings("removal") 似乎有效。
C:\Users\raz\git\code\src\simplegui\InsetsDemo.java:4: warning: [removal] Applet in java.appl
et has been deprecated and marked for removal
public class InsetsDemo extends Applet {
^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
构建文件:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.hidetake:gradle-ssh-plugin:1.1.2'
}
}
plugins {
id 'java'
id 'checkstyle'
id 'distribution'
id 'application'
}
repositories {
mavenCentral()
}
sourceSets {
main {
main.java.srcDirs = ["src"]
main.resources.srcDirs = ["resources"]
}
test {
test.java.srcDirs = ["tst"] // removed slow/ as it was very.
}
}
dependencies {
testImplementation 'junit:junit:4.13.2'
}
jar {
manifest {
attributes 'Main-Class': MyStuff.main
}
}
run {
standardInput = System.in
}
targetCompatibility = "16"
sourceCompatibility = "16"
version = '0.1'
mainClassName = MyStuff.main // for application plugin
class MyStuff {
public static final String main="com.tayek.utilities.Dispatcher";
}
您的构建真的因为弃用警告而失败了吗?正如奥利弗在评论中指出的那样,只有当您 运行 javac
带有 -Werror
选项时才会出现这种情况。但即使您使用了那个选项,消息看起来也会有所不同——可能像这样:
error: warnings found and -Werror specified
1 error
1 warning
据我所知,这个弃用警告似乎是在转移注意力。只是为了确定:您的构建是否完全失败?当您 运行 ./gradlew classes
时,Gradle 是否报告了类似以下的内容……
> Compilation failed; see the compiler error output for details.
…接着是“BUILD FAILED”?
如果 Gradle 为该命令报告“BUILD SUCCESSFUL”,则警告不是问题。如果在 运行 执行其他任务时您的构建仍然失败(例如,作为 ./gradlew build
的一部分),那么日志中 应该 是其他错误。如果没有,则尝试添加 --stacktrace
选项以希望获得有关实际错误的更多详细信息。
就是说,如果您只想(完全)摆脱该警告,那么根据 this SO answer,您唯一的选择是向 [=18= 添加一个 @SuppressWarnings("deprecation")
注释] class。否则警告是“Java 语言规范强制要求的。”