当我需要获取android.content.ContextWrapper
的方法签名时,我会转到
“C:\ Program Files(x86)\ Android \ android-sdk \ platforms \ android-18”其中放置了android.jar然后执行
javap -s -classpath android.jar android.content.ContextWrapper > out.txt
现在,我需要获取java.io.File
的方法签名。对应的.jar是如何命名的?
答案 0 :(得分:2)
它出现在rt.jar
。您可以使用JarFinder查找jar和类。
它出现在jdk安装目录的lib
文件夹中。
答案 1 :(得分:2)
这是来自JRE或JDK的rt.jar
,即JRE内的lib
。鉴于您使用的是Windows,我会前往:
C:\program files\java\jdk1.7.0_25\jre\lib
表示JDK(将位置更改为JDK)。
android.jar
也拥有该文件,但前者应该足以支持非Android实现。
答案 2 :(得分:2)
从Android SDK 16开始(我在Android 18中未对此进行测试)android.jar
也有java.io.File
类。
尝试将其打开为ZIP文件并查看它有哪些文件。
ContentWrapper
位于android/content
文件夹中。
File
存在于java/io
文件夹中。
以下是android.jar
java.io.File
Compiled from "File.java"
public class java.io.File implements java.io.Serializable, java.lang.Comparable<java.io.File> {
public static final char separatorChar;
Signature: C
public static final java.lang.String separator;
Signature: Ljava/lang/String;
public static final char pathSeparatorChar;
Signature: C
public static final java.lang.String pathSeparator;
Signature: Ljava/lang/String;
static final boolean $assertionsDisabled;
Signature: Z
int getPrefixLength();
Signature: ()I
public java.io.File(java.lang.String);
Signature: (Ljava/lang/String;)V
public java.io.File(java.lang.String, java.lang.String);
Signature: (Ljava/lang/String;Ljava/lang/String;)V
答案 3 :(得分:1)
它出现在您正在使用的Java版本的java runtime library
中。对我来说,它在
/home/aniket/jdk1.7.0_11/jre/lib/rt.jar
相应检查。