繁体   English   中英

热禁用从 javax 到 jakarta 包的 WildFly 26.0.1 字节码转换

[英]Hot to disable WildFly 26.0.1 bytecode transformation from javax to jakarta packages

我们将WildFly 26.0.1Java 17一起使用。 当您部署WAR文件时, WildFly检查WAR中包含的所有JAR文件,并修改所有引用“ javax. ”包的已编译 class 文件 ( .class ),将它们替换为相应的“ jakarta. ”package。此自动字节码转换过程给我们带来了两个问题:

  1. 所有修改过的JAR文件签名失效,JVM拒绝加载和执行。 JAR 签名是我们发现的确保我们的软件不被客户、黑客和/或病毒篡改的唯一可靠方法。
  2. WAR中包含的某些JAR文件不打算由WildFly执行。 相反,它们使用Java Web Start (JNLP)技术下载到客户端,并由带有“ javax. ”包的Java 1.8 (JRE)执行。 出于安全原因,JNLP 不会加载和执行下载的 JAR未正确签名的文件。 此外,我们不希望这些JAR文件使用“ jakarta. ”包。

我们知道哪些JAR 个文件被客户端用“ javax. ”包使用,哪些JAR 个文件被WildFly用“ jakarta. ”包执行。 所以,问题是:如何禁用WildFly在部署WAR文件时执行的字节码转换过程?

我假设您使用的是 WildFly Preview。 可以通过将org.wildfly.unsupported.skip.jakarta.transformer系统属性设置为true来禁用部署转换器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM