运行 android 应用作为 java 程序进行调试

Run android app as java program to debug

是否可以使用 main 方法从 class 运行 一个 android 应用程序,作为一个 Java 应用程序?

我想测试一些不使用 android 库编写的 classes,我宁愿使用 System.out.println() 而不是 运行 宁 android 模拟器与整个应用程序。

我想创建一个额外的项目是一种解决方法,但我想知道是否有一种直接的方法。

我写了:

Debug.java

package com.myapp.test;

public class Debug {
    public static void main(String args[]){
        System.out.println("Hello World!");
    }
}

单击时出现以下错误,运行 As -> Java Application:

Invalid layout of java.lang.String at value
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (javaClasses.cpp:124), pid=50304, tid=12920
#  fatal error: Invalid layout of preloaded class
#
# JRE version:  (8.0_05-b13) (build )
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.5-b02 mixed mode windows-amd64 compressed oops)
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# An error report file with more information is saved as:
# C:\Users\ME\workspace\MyFirstApp\hs_err_pid50304.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.sun.com/bugreport/crash.jsp
#

通常,如果我的代码与我的 UI 工具包(在您的情况下是 Android SDK)不同,我会为其创建一个库项目。无论如何,这是一个很好的做法,这样您可以确保您的模型和逻辑与您的 UI 完全分开,依赖关系仅从 UI 到模型,而不是相反。

如果您这样做,那么测试您的 UI 独立代码就很简单了。我可能会创建第三个项目,其中将包括您的单元测试(您应该拥有),如果需要,还包括一些测试程序,例如您打算编写的测试程序。拥有单独的项目并提供更清洁的构建过程并没有太多开销。