GVKun编程网logo

Dalvik VM错误:发现异常“ Javax.xml.namespace.QName.class”(fail to create the java vm)

6

对于想了解DalvikVM错误:发现异常“Javax.xml.namespace.QName.class”的读者,本文将提供新的信息,我们将详细介绍failtocreatethejavavm,并且为您

对于想了解Dalvik VM错误:发现异常“ Javax.xml.namespace.QName.class”的读者,本文将提供新的信息,我们将详细介绍fail to create the java vm,并且为您提供关于C# 类的使用 - namespace,partial class, 继承、C# 类的使用-namespace,partial class,继承、ClassObject.getClass,ClassName.class和Class.forName(“ ClassName”)之间的区别、CXF之"@XmlType.name 和 @XmlType.namespace 为类分配不同的名称"异常的有价值信息。

本文目录一览:

Dalvik VM错误:发现异常“ Javax.xml.namespace.QName.class”(fail to create the java vm)

Dalvik VM错误:发现异常“ Javax.xml.namespace.QName.class”(fail to create the java vm)

这并不是一个问题。相反,当您使用外部API进行开发并且android.jar出现在Android中时,这是一个常见问题,它不会复制到您的项目中!

答案1

小编典典

在搜索了各种论坛,Google和stackoverflow之后,我似乎自己得到了一个解决方案,并想到了共享它的想法。

  1. 每当您链接外部库时,最好通过创建一个/ lib文件夹并将其放在.jar文件夹中来进行链接(将其复制到文件中而不链接它们)。使用 Eclipse- > Build Properties-> Configure Build path-> Library选项卡-> Add external Jars链接它们。在此添加保存在/ lib文件夹中的所需.jars。(请注意, 在Eclipse中作为“参考库”包含的jar将消失在/ lib文件夹中!! 但是,不必担心发生了正确的链接。另一个注意事项是检查所引用的/ lib jar是否不可见在“构建属性”的“库”标签中,因为它将被继承。)

  2. 另一个主要问题是使用Google API时。特别是那些使用java / javax的一些核心库函数的库。请特别注意。错误是,DalvikVM尝试链接这些链接,但由于找到重复项而失败,无法确定要引用哪个链接。下面是错误。

        Dx trouble processing "javax/xml/namespace/QName.class":     Ill-advised or mistaken usage of a core class (java.* or javax.*) when not building a core library.

在这种情况下,我观​​察到的是,此类在 xpp3-1.1.4c.jar中使用。 如果已将其复制到/
lib文件夹中,请删除它
。然后清理项目,并重新构建。此后,船顺利航行。

如果存在重复,请对其他引用的.jar执行此操作。

干杯!

C# 类的使用 - namespace,partial class, 继承

C# 类的使用 - namespace,partial class, 继承

using System;

namespace test
{
   System.Console.WriteLine("Hello from test");
}

1、namespace 关键字声明了应与类相关的名称空间。其后花括号中的所有代码都被认为是在这个名称控件中。

//BigClassPart1.cs
[CustomAttribute]
partial class TheBigClass: TheBigBaseClass, IBigClass
{
  public void MethodOne(){}
}

//BigClassPart2.cs
[AnotherAttribute]
partial class TheBigClass: IOtherBigClass
{
   public void MethodTwo(){}
}

等价于

[CustomAttribute]
[AnotherAttribute]
partial class TheBigClass:TheBigBaseClass,IBigClass,IOtherBigClass
{
    public void MethodOne(){}
    public void MethodTwo(){}
}

2、partial 关键字的用法是:把 partial 放在 class、struct 或 interface 关键字的前面。在嵌套的类型中,只要 partial 关键字位于 class 关键字的前面,就可以嵌套部分类。在把部分类编译到类型中时,属性、XML 注释、接口、泛型类型的参数属性和成员合并。

3、继承

  • 实现继承:类型派生于一个基类型,它拥有该基类型的素有成员字段和函数。
  • 接口继承:类型只继承了函数的签名,没有继承任何实现代码。
classMyDerivedClass:MyBaseClass{}
public class MyDerivedClass:MyBaseClass,IInterface1,IInterface2{}

 

C# 类的使用-namespace,partial class,继承

C# 类的使用-namespace,partial class,继承

using System;

namespace test
{
   System.Console.WriteLine("Hello from test");
}

1、namespace关键字声明了应与类相关的名称空间。其后花括号中的所有代码都被认为是在这个名称控件中。

//BigClassPart1.cs
[CustomAttribute]
partial class TheBigClass: TheBigBaseClass, IBigClass
{
  public void MethodOne(){}
}

//BigClassPart2.cs
[AnotherAttribute]
partial class TheBigClass: IOtherBigClass
{
   public void MethodTwo(){}
}

等价于

[CustomAttribute]
[AnotherAttribute]
partial class TheBigClass:TheBigBaseClass,IBigClass,IOtherBigClass
{
    public void MethodOne(){}
    public void MethodTwo(){}
}

2、partial关键字的用法是:把partial放在class、struct或interface关键字的前面。在嵌套的类型中,只要partial关键字位于class关键字的前面,就可以嵌套部分类。在把部分类编译到类型中时,属性、XML注释、接口、泛型类型的参数属性和成员合并。

3、继承

  • 实现继承:类型派生于一个基类型,它拥有该基类型的素有成员字段和函数。
  • 接口继承:类型只继承了函数的签名,没有继承任何实现代码。
classMyDerivedClass:MyBaseClass{}
public class MyDerivedClass:MyBaseClass,IInterface1,IInterface2{}

 

ClassObject.getClass,ClassName.class和Class.forName(“ ClassName”)之间的区别

ClassObject.getClass,ClassName.class和Class.forName(“ ClassName”)之间的区别

我想了解Class.forName(“
ClassName”)和ClassObject.getClass是否都返回该类的运行时实例。然后为什么在比较从这两个对象获得的结果Class对象时获取一个布尔值false(如果我们使用==或equals进行比较)。
我也想知道在类名上调用.class方法的确切用途。我读到它是在编译时等确定的,但目的是什么。Class.forName(“ ClassName”)是否足够?
谢谢

CXF之

CXF之"@XmlType.name 和 @XmlType.namespace 为类分配不同的名称"异常

情景描述:在我的webservice服务中,要调用远程写好的一个服务;由于我的后台是用CXF方式开发的,所以调用远程的方式采用的是由wsdl生成本地代理接口来实现的,生成本地接口的代码如下:

F:\jar包驱动\apache-cxf-2.6.0\bin>wsdl2java -p com.dyc.client -d d:/ws -verbose http://localhost:7000/gisplatform/SpatialAnalysisService?wsdl 

然后将生成的在ws目录下的源文件copY到我的工程中调用,报下面错误

信息: Creating Service {http://www.sgcc.com.cn/sggis/service/gisservice}Spatialanalysisserviceservice from class cn.creaway.webgis.proxy.SpatialAnalysisService
Exception in thread "main" org.apache.cxf.service.factory.ServiceConstructionException
	at org.apache.cxf.jaxb.JAXBDataBinding.initialize(JAXBDataBinding.java:297)
	at org.apache.cxf.service.factory.AbstractServicefactorybean.initializeDataBindings(AbstractServicefactorybean.java:86)
	at org.apache.cxf.service.factory.ReflectionServicefactorybean.buildServiceFromClass(ReflectionServicefactorybean.java:474)
	at org.apache.cxf.jaxws.support.JaxWsServicefactorybean.buildServiceFromClass(JaxWsServicefactorybean.java:685)
	at org.apache.cxf.service.factory.ReflectionServicefactorybean.initializeServiceModel(ReflectionServicefactorybean.java:536)
	at org.apache.cxf.service.factory.ReflectionServicefactorybean.create(ReflectionServicefactorybean.java:248)
	at org.apache.cxf.jaxws.support.JaxWsServicefactorybean.create(JaxWsServicefactorybean.java:205)
	at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:101)
	at org.apache.cxf.frontend.Clientfactorybean.create(Clientfactorybean.java:90)
	at org.apache.cxf.frontend.ClientProxyfactorybean.create(ClientProxyfactorybean.java:155)
	at org.apache.cxf.jaxws.JaxWsProxyfactorybean.create(JaxWsProxyfactorybean.java:156)
	at cn.creaway.webgis.business.SpatialAnalysisServiceBusiness.computeUserLineLengthStatisticByDept(SpatialAnalysisServiceBusiness.java:71)
	at cn.creaway.webgis.business.SpatialAnalysisServiceBusiness.main(SpatialAnalysisServiceBusiness.java:85)
Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 3 counts of IllegalAnnotationExceptions
两个类具有相同的 XML 类型名称 "{http://www.sgcc.com.cn/sggis/service/gisservice}computePSRStatisticByDept"。请使用 @XmlType.name 和 @XmlType.namespace 为类分配不同的名称。
	this problem is related to the following location:
		at cn.creaway.webgis.proxy.jaxws_asm.ComputePSRStatisticByDept
	this problem is related to the following location:
		at cn.creaway.webgis.proxy.ComputePSRStatisticByDept
		at public cn.creaway.webgis.proxy.ComputePSRStatisticByDept cn.creaway.webgis.proxy.ObjectFactory.createComputePSRStatisticByDept()
		at cn.creaway.webgis.proxy.ObjectFactory
两个类具有相同的 XML 类型名称 "{http://www.sgcc.com.cn/sggis/service/gisservice}computeLineLengthStatisticByDeptResponse"。请使用 @XmlType.name 和 @XmlType.namespace 为类分配不同的名称。
	this problem is related to the following location:
		at cn.creaway.webgis.proxy.jaxws_asm.ComputeLineLengthStatisticByDeptResponse
	this problem is related to the following location:
		at cn.creaway.webgis.proxy.ComputeLineLengthStatisticByDeptResponse
		at public cn.creaway.webgis.proxy.ComputeLineLengthStatisticByDeptResponse cn.creaway.webgis.proxy.ObjectFactory.createComputeLineLengthStatisticByDeptResponse()
		at cn.creaway.webgis.proxy.ObjectFactory
两个类具有相同的 XML 类型名称 "{http://www.sgcc.com.cn/sggis/service/gisservice}computePSRStatisticByDeptResponse"。请使用 @XmlType.name 和 @XmlType.namespace 为类分配不同的名称。
	this problem is related to the following location:
		at cn.creaway.webgis.proxy.jaxws_asm.ComputePSRStatisticByDeptResponse
	this problem is related to the following location:
		at cn.creaway.webgis.proxy.ComputePSRStatisticByDeptResponse
		at public cn.creaway.webgis.proxy.ComputePSRStatisticByDeptResponse cn.creaway.webgis.proxy.ObjectFactory.createComputePSRStatisticByDeptResponse()
		at cn.creaway.webgis.proxy.ObjectFactory

	at com.sun.xml.bind.v2.runtime.IllegalAnnotationsException$Builder.check(IllegalAnnotationsException.java:106)
	at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:466)
	at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:298)
	at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:141)
	at com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1163)
	at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:145)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:211)
	at javax.xml.bind.ContextFinder.find(ContextFinder.java:372)
	at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:574)
	at org.apache.cxf.common.jaxb.JAXBContextCache$2.run(JAXBContextCache.java:268)
	at org.apache.cxf.common.jaxb.JAXBContextCache$2.run(JAXBContextCache.java:267)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.apache.cxf.common.jaxb.JAXBContextCache.createContext(JAXBContextCache.java:266)
	at org.apache.cxf.common.jaxb.JAXBContextCache.getCachedContextAndSchemas(JAXBContextCache.java:172)
	at org.apache.cxf.jaxb.JAXBDataBinding.createJAXBContextAndSchemas(JAXBDataBinding.java:427)
	at org.apache.cxf.jaxb.JAXBDataBinding.initialize(JAXBDataBinding.java:295)
	... 12 more

开始一直怀疑是因为我项目中的服务名与我调用的服务名之间有冲突,根据异常信息很容易让人如此思考;后来无意中打开一个接口文发现,原来我copY到工程中时,包的路径改变了,而原接口引用的类路径却还是我生成时用的目录,如下:

......................................................  
@ResponseWrapper(localName = "computePSRStatisticByDeptResponse",targetNamespace = "http://www.sgcc.com.cn/sggis/service/gisservice",className = "com.dyc.client.ComputePSRStatisticByDeptResponse")  
    public java.lang.String computePSRStatisticByDept(  
            @WebParam(name = "InputXML",targetNamespace = "") java.lang.String inputXML);  
.......................................................  

可以发现我的className一直引用的是我原来的包名,而我现在的包名是cn.gary.test

 

修改方法,改接口显然不实际,所以重新生成接口,修改命令为:


F:\jar包驱动\apache-cxf-2.6.0\bin>wsdl2java -p cn.gary.test -d d:/ws -verbose http://localhost:7000/gisplatform/SpatialAnalysisService?wsdl  

再将生成的接口copY到相同的接口下,就不会再报错了。

总结:同样的异常也有可能别的原因引起的,这里只是其中一种可能.

今天关于Dalvik VM错误:发现异常“ Javax.xml.namespace.QName.class”fail to create the java vm的分享就到这里,希望大家有所收获,若想了解更多关于C# 类的使用 - namespace,partial class, 继承、C# 类的使用-namespace,partial class,继承、ClassObject.getClass,ClassName.class和Class.forName(“ ClassName”)之间的区别、CXF之"@XmlType.name 和 @XmlType.namespace 为类分配不同的名称"异常等相关知识,可以在本站进行查询。

本文标签: