我收到使用Javac将Java源代码编译成类的错误。
MainActivity
文件夹中只有res
的布局,我用R.java
生成了aapt2
并将其导入。
我使用以下内容创建了R.java
:
aapt2 link --manifest AndroidManifest.xml -I android.jar -R co/layout_activity_main.xml.flat --java
这是我遇到的错误。
javac it/dummy/MainActivity.java -cp knoxsdk.jar:android.jar:it/
it/dummy/MainActivity.java:12: error: cannot find symbol
import it.dummy.R;
^
symbol: class R
location: package it.dummy
it/dummy/MainActivity.java:19: error: package R does not exist
setContentView(R.layout.activity_main);
^
it/dummy/MainActivity.java:21: error: package R does not exist
final Button activateBtn = findViewById(R.id.activateBtn);
^
it/dummy/MainActivity.java:29: error: package R does not exist
final Button installBtn = findViewById(R.id.installBtn);
^
it/dummy/MainActivity.java:37: error: package R does not exist
final Button updateBtn = findViewById(R.id.updateBtn);
^
5 errors
答案 0 :(得分:1)
我假设 R.java 在它/dummy/ 中并且 MainActivity.java 有 package it.dummy;
。似乎错误的是类路径:应该包含 '.'
而不是 'it/'
:
javac it/dummy/MainActivity.java -cp knoxsdk.jar:android.jar:.
答案 1 :(得分:0)
我认为您需要先编译您的资源,以便以后使用link
选项将它们链接起来,如下所示。
aapt2 compile -o co/res/ app/src/main/res/layout/layout_activity_main.xml
另请参阅this answer。