试图用javac:package R编译java源代码不存在
我在使用javac将java源代码编译成类时遇到了这个错误 在试图用javac:package R编译java源代码不存在,java,android,javac,Java,Android,Javac,我在使用javac将java源代码编译成类时遇到了这个错误 在res文件夹中有MainActivity的唯一布局,我用aapt2生成了R.java,并导入了它 我使用以下内容创建R.java: aapt2 link --manifest AndroidManifest.xml -I android.jar -R co/layout_activity_main.xml.flat --java 这里是我得到的错误 javac it/dummy/MainActivity.java -cp knox
res
文件夹中有MainActivity
的唯一布局,我用aapt2
生成了R.java
,并导入了它
我使用以下内容创建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
我认为您需要首先编译资源,以便稍后使用
link
选项链接它们,如下所示
aapt2 compile -o co/res/ app/src/main/res/layout/layout_activity_main.xml
其他选项请参见 我假设R.java在it/dummy/中,MainActivity.java有
包it.dummy代码>。出现错误的是类路径:应该包含。
而不是“it/”
:
javac it/dummy/MainActivity.java -cp knoxsdk.jar:android.jar:.
这个问题与-edited标记无关。问:你为什么要手动运行aapt2?如果1)使用Android Studio创建项目,2)删除import.dummy.R代码>来自您的.java源代码,然后最终使用Android Studio构建-一切“正常”吗?您的标题和问题不一致。不同的错误消息。你是对的:在“链接*它”之前需要编译布局资源。但它仍然回避了一个问题:Q:为什么不使用ANDROID STUDIO???和相关问题:为什么把ANDROID标准“R”放在一个非标准的地方,比如“it.dummy”?@palsm4 LOL。我不知道,每个人都有自己的原因。