Java android-support-v4.jar不是';无法在Eclipse中正确导入

Java android-support-v4.jar不是';无法在Eclipse中正确导入,java,android,jar,compatibility,android-support-library,Java,Android,Jar,Compatibility,Android Support Library,我正在尝试编译一个应用程序,它使用了android-support-v4.jar和它包含的Fragmentation类,但是每当我尝试编译时,我都会收到消息说代码中有错误。所有这些错误都与.JAR中的不同碎片类有关。我尝试了ctrl单击项目文件夹,然后选择Android工具->添加兼容性库,我一直收到这个错误: [2011-12-20 11:55:31 - Android Compatibility JAR not found:] /Applications/eclipse/Eclipse.ap

我正在尝试编译一个应用程序,它使用了
android-support-v4.jar
和它包含的
Fragmentation
类,但是每当我尝试编译时,我都会收到消息说代码中有错误。所有这些错误都与
.JAR
中的不同
碎片
类有关。我尝试了
ctrl单击项目文件夹,然后选择
Android工具->添加兼容性库
,我一直收到这个错误:

[2011-12-20 11:55:31 - Android Compatibility JAR not found:]
/Applications/eclipse/Eclipse.app/Contents/MacOS/v4/android-support-v4.jar
为什么它要在Eclipse的包内容中查找
.JAR
?我进入了项目属性,进入了Java构建路径,从
MainActivity/libs
文件夹导入了
.JAR
,但没有成功,然后我尝试从SDK目录导入它,但没有成功。我修复了项目属性,清理并构建了无数次,重新启动了Eclipse、我的计算机,重新下载并安装了Eclipse、Android SDK和ADT,但仍然一无所获。我完全被难住了


编辑
我已经完成了构建路径,并从
MainActivity/libs
和我的SDK目录导入了.JAR。该死的,我在目录中添加了.JAR,它一直出现在错误中,但不起作用。是什么让Eclipse在其应用程序包内容中寻找它


更新
因此,在修补项目内容后,没有显示任何错误,但MainActivity文件夹仍然说有一个错误,我仍然无法编译

像nyah:


修订
因此,我认为问题可能是“为什么Eclipse在Eclipse应用程序包内容中寻找.JAR,而不是项目的
libs
目录或我用来将其作为外部.JAR导入的Android SDK目录?”


更新#2
经过修补,我现在只得到一个错误,它是在这个方法上:

@Override
public MenuItem setOnActionExpandListener(OnActionExpandListener onActionExpandListener) {
    // Noop
    return this;
}
快速修复说我应该删除@Override注释,但该方法必须重写一个超类方法

以下是它显示的错误:

Multiple markers at this line
- The method setOnActionExpandListener(MenuItem.OnActionExpandListener) of type SimpleMenuItem must override a superclass method
- implements android.view.MenuItem.setOnActionExpandListener

看起来它正在这里寻找jar:/Applications/eclipse/eclipse.app/Contents/MacOS/v4/android-support-v4.jar

android-support-v4.jar位于/extras/android/compatibility/v4中


请确保将其作为外部jar添加到java构建路径中

是否尝试不执行Android工具->添加兼容性库,而仅在java构建路径库中添加jar


我以这种方式使用这个jar库,它可以毫无问题地工作。

如果这个问题仍然没有解决: 如前所述,在Eclipse中,转到您的项目属性>Java构建路径>Libs>AddExternal并从adk目录获取一个


如果还没有,也可以将Java1.6设置为默认编译版本。这应该可以解决您描述的覆盖错误。

事实证明,我的调试证书已过期,所以我只需要删除
~/.android/Debug.keystore
并重新启动Eclipse,一切正常。

另一个警告是在Windows 7中运行android SDK管理器时没有管理员权限。它将尝试安装支持包,但总是失败,并且实际的包从未下载到

C:\ProgramFiles(x86)\Android\Android sdk\extras\Android\support\v4\Android-support-v4.jar


我知道这个问题已经得到了回答,但这是一个已知的问题,根据这里的评论9,应该在ADT-17插件版本中修复:

此外,有此问题的人可以将兼容性JAR复制到它说找不到的位置。很明显,它找错了地方(因为它检查的是Eclipse目录而不是android sdk目录),所以现在简单的修复方法就是将包放在它想要找到的地方,即使它不属于这个目录


对我来说,只需将C:/android sdk/extras/android/support/中的v4目录复制到C:/eclipse/目录中即可


在projectproperties:Java构建路径:Order和Export选项卡下,没有选中android-support-v4.jar旁边的框。我选中了这个框,错误消失了。

我在Ubuntu中运行时也遇到了同样的问题。转到工具->选项。 制衡力https://... 到http://
打开Android SDK管理器。查看Extras->Android支持库。

类似的事情也发生在我身上。在MainActivity.java的顶部,我看到下一个导入给出了错误:

import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;

在左边的每一行中,他们都让灯泡提出一些建议。如果单击它,其中一个选项将是“修复项目设置”。然后,您将能够在修复导入的几个选项中进行选择,您应该选择一个指定android-support-v4.jar的选项。

我可以通过 1-从lib中删除“android-support-v4.jar”
2-右键单击项目名称,选择“Android工具”和“添加支持库”

解决方案:确保在Android项目创建过程中(或创建后在清单文件中)为“目标SDK”和“使用编译”输入相同的API.

右键单击您的项目-->选择android工具-->选择添加支持库,然后简单地安装支持库

是的,我说过,我想我已经提到了,我会加进去的。就像我说的,我已经从MainActivity/libs中添加了.JAR,并从SDK目录中添加了一个外部的.JAR,但这并没有做任何我能看到的事情。这个路径仍然有效吗?当我在Gradle中将它作为依赖项添加时,它最终出现在这里:/extras/android/m2repository/com/android/support/support-v4我做到了,我的同事在他的机器上工作得很好,对此我真的很困惑,当我使用安卓工具>添加兼容性库时,它会出现在Eclipse文件夹中。我不知道为什么,看起来很傻。嗨,朱克