部署期间出错:oracle.classloader.util.AnnotatedClassFormatError

时间:2012-11-21 10:14:37

标签: java oracle deployment

几天后,我正在尝试将新的ear文件部署到Oracle Enterprise Manager 10g。 我一直收到这个错误:

Operation failed with error: WSSERVLET11: failed to parse runtime descriptor:
oracle.classloader.util.AnnotatedClassFormatError: 
Illegal class modifiers in class [...]/package-info: 0x1600 
[...] jre.bootstrap:1.5.0.16 Code-source: unknown Configuratie: jre bootstrap 

要排除它与我的更改有关,我从SVN获得了我的源代码的新副本,但是当我构建新的ear-file并部署时出现相同的错误。 我可以部署原始的ear文件,所以很可能是我的机器上的一些设置。 最初的ear文件已于2009年部署,因此可能有很多变化;)

我正在使用JDevelop 10.1.3.3,该应用程序是一个用JAVA编写的web服务

我比较了原始的ear文件和新的ear文件。使用相同的库。 我确实看到一些.class文件在新的ear文件中有点大。但是比较它们的文本有点困难(至少对我而言)。

有人有任何可能出错的建议吗?

[更多信息]

当我使用上一个ear-file的package-info.class时,我可以部署。 当我反编译这两个文件时,我得到了这个:

不可

package [].endpoint;
import javax.xml.bind.annotation.XmlNsForm;
import javax.xml.bind.annotation.XmlSchema;
@XmlSchema(namespace="http://[]/xml/schema/[]/1.0", elementFormDefault=XmlNsForm.QUALIFIED)
interface package-info
{
}

错误

package [].endpoint;
import javax.xml.bind.annotation.XmlNsForm;
import javax.xml.bind.annotation.XmlSchema;
@XmlSchema(namespace="http://[]/xml/schema/[]/1.0", elementFormDefault=XmlNsForm.QUALIFIED)
abstract interface package-info
{
}

正如您所看到的,唯一的区别是抽象修饰符。

我的package-info.java已生成,如下所示:

@javax.xml.bind.annotation.XmlSchema(namespace = "http://[]/xml/schema/[]/1.0", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package [].service.endpoint;

我需要做什么才能让我的jdeveloper生成一个合适的package-info.class。

0 个答案:

没有答案