运营商 !对于参数类型未定义布尔值

Posted

技术标签:

【中文标题】运营商 !对于参数类型未定义布尔值【英文标题】:The operator ! is undefined for the argument type(s) Boolean 【发布时间】:2012-08-19 04:28:14 【问题描述】:

我正在尝试预编译我的 jsp,但出现以下错误。 我不确定为什么会收到此错误。据我所知,从 JDK 1.5 开始,自动装箱会发生,这应该不是问题。我们使用 Jboss 4.1 的 Jasper,任何关于为什么会发生这种情况的见解都会对我们有所帮助。我只想确认两点。

    如果我们使用jdk >1.5,那么,是否会出现这个问题? 我们如何验证我们正在使用的 jasper 版本? Japser 是否会在路径中使用 jdk 来编译 JSP?

还有一个有趣的事实是,当我们尝试预编译 JSP 时,就会发生这种情况。当我们在没有预编译的情况下进行部署时,该功能运行良好。这意味着 Jboss 能够毫无问题地编译,只是预编译失败。

我对这个错误没有任何线索,请帮忙。

例外

/opt/app/build//precompile/motor/testing/org/apache/jsp/presultblock/reading/readingdriver_jsp.java (在第 116 行)[javac] Boolean isTest = false; [javac] ^^^^^ [javac] 类型不匹配:无法从布尔值转换为布尔值 [javac] ---------- [javac] 2. /opt/app/build//precompile/motor/testing/org/apache/jsp/presultblock/reading/readingdriver_jsp.java 中的错误 (在第 257 行)[javac] isTest = true; [javac] ^^^^ [javac] 类型 不匹配:无法从布尔值转换为布尔值 [javac] ---------- [javac] 3. 错误 /opt/app/build//precompile/motor/testing/org/apache/jsp/presultblock/reading/readingdriver_jsp.java (在第 414 行)[javac] if(!isTest) [javac] ^^^^^^^ [javac] 操作员 !对于参数类型未定义布尔 [javac] ---------- [javac] 3个问题(3个错误)


【问题讨论】:

向我们展示导致此问题的 JSP 和 Java 代码。 请检查你是如何预编译的 【参考方案1】:

显然您的 JBoss 4.1 使用的是

【讨论】:

是的,它使用的是 Jdk 1.5,我不知道为什么会这样。 还有一个有趣的事实是,当我们尝试预编译 JSP 时,就会发生这种情况。当我们在没有预编译的情况下进行部署时,该功能运行良好。这意味着 Jboss 能够编译没有任何问题,只是预编译失败。 您的症状可以通过使用不支持自动装箱的 JDK 进行 JSP 预编译来解释......以及运行 JBoss 的不同 JDK。 @Adam 不,它没有使用 JDK 1.5。您的 IDE 使用的是 1.5,这就是它在您预编译时工作的原因。 JBoss 显然不是。

以上是关于运营商 !对于参数类型未定义布尔值的主要内容,如果未能解决你的问题,请参考以下文章

无法将“字符串”类型的值转换为预期的参数类型“布尔”

ByRef 参数类型与布尔值不匹配

如何将Int类型的值转换为期望的布尔类型参数

强数据类型错误

函数传参,参数类型

如何将布尔数据类型作为存储过程的参数传递?