uiautomator开发使用到第三方jar,出现class not found或者 BUILD FAILED的问题

最近做安卓的遍历测试,是基于uiautomator做的,二次开发,避免不了使用第三方jar,比如这边我使用到的就是xStream,但是在打包的过程中会出现

classNotFound或者是Build Failed的问题。


这里有两个原因:

1、编译的时候,没有把jar包添加进来,这时候的体现一般是报BUILD FAILED的错误。

2、jar包添加进来了,没有把jar下的class文件的路径对应放到classes.dex文件中,造成类无法找到,这时候一般会报classNotFound的错误。


针对以上两个问题,我们需要对应修改uiBuild.xml文件,这个文件是ant自带的,目录为${sdk.dir}/tools/ant/uibuild.xml


1、将jar包的路径,放到compile下,红色部分为新增内容,意思是将项目的libs文件夹下的所有jar包都加入编译。

 
                        source="${java.source}" target="${java.target}"
                debug="true" extdirs="" includeantruntime="false"
                destdir="${out.classes.absolute.dir}"
                bootclasspathref="project.target.class.path"
                verbose="${verbose}"
                fork="${need.javac.fork}">
           
           
           
               
           

       

   


2、把class的路径加入到classes.dex文件中,红色部分为新增内容。

   
                        output="${intermediate.dex.file}"
                nolocals="@{nolocals}"
                verbose="${verbose}">
           
           
       

   


最后修改后的uibuild.xml文件内容如下:




	

	
	
	

	

	
	

	
	

	
	
	
	
	

	
	

	
	
	

	
	
		
	

	
	

	
	
	
		
		
	
	
	


	
	
	
	

	
	
	
	
	

	
	
	
	

	

	
	
	
	
		
	
	
		
	
	

	
	
	
	

	
	
		
			
			
				
			
		
	

	
		
		
		
			Running tests ...
			
				
				
				
				
				
				
				
				
				
				
			
		
	

	
	
	

	
	
		
	

	
	

	
	
		
	

	
	
		
		

		Resolving Build Target for ${ant.project.name}...
		
		
		

		----------
		Creating output directories if needed...
		
		

	

	
	

	
	
		
			
			
			
			
				
			
			
		
	

	
	

	
	
		
			
			
			
			
		
	

	
	

	
		
			
		
	

	
	

	

	
		
			
			
			
			
		
	

	
		
		

		
			
			
			
			
			
			
			
			
		
	

	
		
		Android Ant Build. Available targets:
		 help: Displays this help.
		 clean: Removes output files created by other targets.
		 build: Builds the test library.
		 install: Installs the library on a connected device or
		 emulator.
		 test: Runs the tests.
		
		It is possible to mix targets. For instance:
		 ant build install test
		This will build, install and run the test in a single command.
		
	



大家也可以将以上内容直接复制到现有的uibuild.xml文件中,快速解决打包问题。


你可能感兴趣的:(android,UiAutomator)