我正在为Android开发一个库,当我在一个示例项目中使用它时,我不断得到一个关于静态内部类的奇怪错误:“找不到符号变量”:
这是我的因素代码:
Outer.java (SDK项目)
public class Outer {
[...] // Attributes and methods
public static class Inner {
public static int x = 42;
}
}
MainActivity.java (示例项目)
import com.xxx.xxx.Outer;
public class MainActivity extends Activity {
[...] // Attributes
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.d("MainActivity", "x = " + Outer.Inner.x);
}
}
这是日志错误:
... / sample / MainActivity.java:54:error:找不到符号 Log.d(“MainActivity”,“x =”+ Outer.Inner.x);
^
符号:变量内部
位置:类外部
我的另一个案例是我的SDK:
我的类“ImageHelper”有一个静态内部类“Builder”。
我将它用于我的SDK并且它可以工作,但是当我想在示例项目中使用它时,我在构建运行时遇到了同样的错误。
我的代码中是否有错误?
答案 0 :(得分:0)
您是否尝试编译自己的剪切代码?当我自己编译时,它工作正常。也许它(提供剪切)也适合你,你的完整程序使用不同的类?
根据您的代码
import com.xxx.xxx.Outer;
外部代码中的包的缺省行和你的项目可能没有一个外部但很多,其中一个没有内部静态类。