Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android更改名称而不更改自动生成的类路径_Android_Eclipse_Classpath - Fatal编程技术网

Android更改名称而不更改自动生成的类路径

Android更改名称而不更改自动生成的类路径,android,eclipse,classpath,Android,Eclipse,Classpath,我正在使用ant生成一个android项目的两个不同版本:开发版和生产版。为了让我们能够在电话上同时安装这两个设备,我尝试使用两个不同的名称:com.xyz.android和com.xyzdev.android 不幸的是,Eclipse使用这个名称作为类路径来生成R.java,因此com.xyz.android.R的所有导入都会在开发版本中中断,因为它们实际上应该查找com.xyzdev.android.R 有没有办法告诉Eclipse为R.java使用特定的类路径?我尝试以下步骤: 通过处理A

我正在使用ant生成一个android项目的两个不同版本:开发版和生产版。为了让我们能够在电话上同时安装这两个设备,我尝试使用两个不同的名称:com.xyz.android和com.xyzdev.android

不幸的是,Eclipse使用这个名称作为类路径来生成R.java,因此com.xyz.android.R的所有导入都会在开发版本中中断,因为它们实际上应该查找com.xyzdev.android.R


有没有办法告诉Eclipse为R.java使用特定的类路径?

我尝试以下步骤:

通过处理AndroidManifest.xml并修改包=…,创建了AndroidManifest_dev.xml,具有绝对类名的活动等

编写了一个ant xml文件build.xml:

<project basedir="." default="copy" name="aa">
    <target name="copy">
        <copy file="./AndroidManifest.xml" overwrite="true" tofile="./AndroidManifest_pro.xml"></copy>
        <copy file="./AndroidManifest_dev.xml" overwrite="true" tofile="./AndroidManifest.xml"></copy>
    </target>
</project> 
在Java builder和Android Package builder之间添加了一个生成器

Eclipse->project->Properties->Builder->New…->Ant Builder->Buildfile,浏览工作区…->您的项目->build.xml->应用->确定 选择新建构建器1单击向上

然后运行应用程序。成功了

希望这能对你有所帮助