无法重构包名称 - Java



我正在处理一个使用android-support-v4.jar作为库的项目(在我的应用程序的libs文件夹中),我想重命名其中的android.support.v4包,但我被告知这无法完成,因为目录不在项目中。

(但我需要它,因为我有ActionSherlock作为导入模块,它也使用android-support-v4作为依赖项。当我第一次运行该应用程序时,我收到错误消息,与该库的加载两次有关)

您应该在两个libs目录中都有相同的android-support-V4.jar副本。只需将libs上的一个复制到ActionBarSherlock libs目录中即可。

您无法重构其他人的包结构。而且:你不需要。

只需将库从您自己项目的libs文件夹中删除即可。IDE足够智能,可以从ActionBarSherlock获取支持库。(如果导入正确)

您的问题可能是以下问题之一:

  1. 您正在引用两个不同版本的android-support-v4.jar。检查文件签名以确保两个项目使用的是同一个文件。

  2. 您已经在父项目中包含了支持库的源代码,并试图在子项目中提供一个jar。建议简单地使用SDK文件夹中提供的android-support-v4.jar

换句话说:不,您不应该试图重命名支持库的包名称。

在build.gradle文件中的ActionSherlock模块中

dependencies {
   compile 'com.android.support:support-v4:+'
}

以及在build.gradle文件中的主项目中

dependencies {
    compile project(':libraries: ActionSherlockModule')
}

最新更新