问题标签 [java-6]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 仅在 JBoss 5.1 中出现的 UnsupportedClassVersionError
我的应用程序包含用 Java6 编译的第 3 方 jar (com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar)。我设法在运行 Java5 的 Tomcat 5.5 上使用它,但是当我尝试在 JBoss 5.1 上部署相同的应用程序时 - 我收到错误:
[org.jboss.detailed.classloader.ClassLoaderManager] (main) 加载时出现意外错误:testdata.SomeAnnotation java.lang.UnsupportedClassVersionError: Bad version number in .class file
我意识到这不仅发生在我身上。如此处所述。
我的问题:
1)为什么可以在诸如tomcat之类的网络服务器中使用这个jar,但它仍然困扰着Jboss 5.1?
2)为什么 Jboss 类加载器加载应用程序的 Jweaver 实现以用于加载它的框架,而它不使用 Jboss aspectJ 实现。也许我应该将其类加载配置为父优先,它会解决这个问题吗?
xsd - 在 java 1.6 中使用 dom4j DOMDocument 来提供 validator.validate(DOMSource) 失败(不允许使用 xsi:noNamespaceSchemaLocation),在 1.5 中有效
在 java 1.6 中使用 dom4j DOMDocument 来提供 validator.validate(DOMSource) 失败(xsi:noNamespaceSchemaLocation 不允许出现在根元素中),在 1.5 中有效
我发现以下问题非常棘手(好吧,这是轻描淡写的) - 任何见解都会受到赞赏。目前似乎最好的想法是放弃 dom4j 以支持例如 XOM (http://stackoverflow.com/questions/831865/what-java-xml-library-do-you-recommend-to-replace-dom4j)。
我一直在验证从 dom4j 'new DOMDocument()' 创建的内存 XML - 但这不适用于 Java 6。
以下对 dom4j (1.6.1) DOMDocument 派生的 DOMSource 的 validate(source) 调用适用于 Java 1.5.x,但在 Java 1.6.x 中失败:
getSchemaURLString() 还用于将 xsi:noNamespaceSchemaLocation 属性添加到根节点,即:xsi:noNamespaceSchemaLocation="http://localhost:8080/integration/xsd/fqlResponseSchema-2.0.xsd"
异常如下:
这是 XML 的开头 - 在禁用对 validator.validate(source) 的调用后生成:
XSD:
所以我的根元素被拒绝了,因为它包含一个 xsi:noNamespaceSchemaLocation 属性。并且架构本身并没有将其指定为我的根元素的有效属性?
在这一点上,在我看来,我需要为这项任务放弃 dom4j 并切换到其他解决方案之一,例如此处概述的:
但无论如何我想知道我做错了什么!
提前致谢。
java - 从java文件编译另一个java文件
只是出于好奇。我们可以从另一个 java 程序编译和运行一个 java 文件吗?如果是这样,您可以发送对该知识源的引用吗?
java - Java中的动态函数创建
所以我想弄清楚是否有一些方法可以动态地创建/分配一个方法给Java中的一个类。如果它是 C,我将使用指针按以下方式进行操作:
但是,Java 当然没有指针,那么有没有办法从 Java 应用程序中获得类似的功能呢?
java - 通过 java.util.ServiceLoader 加载通用服务实现
前几天我偶然发现了一些使用不便,java.util.ServiceLoader
并且在我心中形成了一些问题。
假设我有一个通用服务:
我无法明确告诉只ServiceLoader
加载具有特定泛型类型的实现。
我的问题是:有哪些合理的方法可以ServiceLoader
安全地加载通用服务的实现?
在提出上述问题之后,在 Paŭlo 回答之前,我设法想出了一个解决方案。
更改boolean canServe(Class<?> t)
为boolean canServe(Object o)
并<T> Service<T> getService(Class<?> t)
以相同的方式更改可能更具动态性(我自己使用后者,因为一boolean canHandle(T t)
开始我的界面上有一个方法。)
string - 在 Java 6 中查找子字符串
我查看了String
Java 6 中的 API,但没有找到任何方法来计算特定子字符串在给定的String
.
例如,我想知道"is"
或"not"
在字符串中出现了多少次"noisxxnotyynotxisi"
。
我可以用循环做很长的路,但我想知道是否有更简单的方法。
谢谢。
编辑:我正在使用 Java 6。
java - 来自 Eclipse 的 Java 控制台
我正在尝试实现 Java 6 控制台 api。如果我试图运行我的 java 类,Java Application
为什么我的控制台为空?或者我应该从命令提示符运行我的 .java 吗?c:workspace>java -cp . console
我的 console.java 类
java - 向 Vector 解释哈希码
我可以了解哈希码如何根据添加到向量的元素获取值吗?
哈希码值为
java - Deque 的 ArrayDeque 类
由于 ArrayDeque 类实现了 Deque 并且没有任何容量限制。addFirst()
像,addLast()
等抛出异常的方法的目的是什么?它会在任何情况下添加元素,因为数组没有边界。有人可以解释一下我们可以在try{}catch{}
块内使用的实现以及 addFirst 可能引发异常的场景吗?
swing - 将 java6 swing 代码移植到 java5
我有一些使用 JTabbedPane java 6 扩展的代码(它使用方法 indexOfTabComponent(Component)) 我怎样才能使这个代码与 java 5 兼容?
请不要告诉我升级到 java 6,我不能。