更新:直到Android Studio 3.4.2
,下面的问题仍然存在。
我使用Android Studio 3.3
并创建了一个scratch
文件(File > new > Scratch File > Java
)。 IDE在scratch.java
中创建了~/.AndroidStudio3.3/config/scratches
:
class Scratch {
public static void main(String[] args) {
}
}
但是,当我运行该暂存文件(通过按类名或
main
方法附近的绿色按钮)时,出现此错误:Error: Could not find or load main class Scratch
我认为IDE不会生成
Scratch.class
,因此Java
无法找到它。有没有办法解决此问题并从IDE运行暂存文件(不使用Terminal
)? 最佳答案
更新
我刚刚注意到,此问题已在Android Studio 3.5中修复!
我使它起作用的唯一方法(在Android Studio 3.4.1中)是这种非常脏的方法:
Run
> Edit Configurations
> Scratch
Before launch
中添加(+)Run External tool
+
并填写以下Tool Settings
名称:
Compile Scratch
程式:
javac
参数:
$FileName$
工作目录:您的暂存文件目录
+
并填写以下Tool Settings
名称:
Run Scratch
程式:
java
参数:
$FileClass$
工作目录:您的暂存文件目录
奇怪的是,这仅在您使用class/main声明旁边的绿色箭头时有效。如果使用菜单中的“运行”按钮,此操作也会失败。
您仍会在运行窗口的
Scratch
选项卡中得到未找到的错误。但是会弹出两个附加选项卡(每个外部工具一个)。在Run Scratch
标签中,您将获得输出。我个人不喜欢这样,但这是我想到的最好的解决方法。