gpt4 book ai didi

java - 如何处理maven下载的api中缺少的ExpressionFactory#newInstance()方法?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:29:09 25 4
gpt4 key购买 nike

根据java ee 5 api ExpressionFactory提供了一个方法#newInstance .我正在使用 maven 中提供的官方 javaee-api:Java EE 5 APIs now in a Maven repository...

但是这个jar没有提供这个方法。所以我得到了编译器错误。

如何在不使用 javaee 实现的情况下获得可编译版本,例如玻璃鱼,openejb?

maven(java.dev.net)官方提供的Java EE 6.0 jar中包含该方法。

最佳答案

According to java ee 5 api ExpressionFactory provides a method #newInstance.

嗯,javadoc 不是证明,实际上,这很可能是 Java EE 5 javadoc 中的错误。 Maintenance Review 1 of the JSR-245 中添加了两个 newInstance() 工厂方法(要使 EL 独立并将其从 JSP 2.1 中移除,请查看 JSR-245 MR1 Change Log 了解详细信息)但该评论从未发布过

因此,您在 java-ee bundle 中找不到此方法也就不足为奇了。在 java.net 存储库中可用。

But this jar does not provide this method. So I get compiler errors.

正如预期的那样。 Java EE 5 中没有这种方法(至少这是我的理解)。所以你需要使用:

ExpressionFactory factory = new ExpressionFactoryImpl();

The official Java EE 6.0 jar provided by maven (java.dev.net) contains this method.

是的,因为这是 Java EE 6,因为 EL 现在是独立的,有自己的规范(从技术上讲,EL 仍然在 JSR-245 中,如果这令人困惑,抱歉)。所以 Java EE 6 包括 EL 2.2(是的,版本 jumped from 1.1 to 2.1.2,然后是 2.2,以便更好地与 JSP 版本保持一致)。此版本确实公开了 ExpressionFactory 上的 newInstance() 方法。

关于java - 如何处理maven下载的api中缺少的ExpressionFactory#newInstance()方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2206915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com