【问题标题】:Setup Gradle to run Java executable in Android Studio设置 Gradle 以在 Android Studio 中运行 Java 可执行文件
【发布时间】:2013-10-22 09:01:03
【问题描述】:

这就是交易:我正在使用适用于 Android 的 ORMLite,它使用注解在 Android 中进行映射。如您所知,注解在 Android 中很慢,ORMLite 的制造者已经意识到这一点,因此他们添加了运行 java 可执行文件以生成资源文件的能力,从而绕过了在运行时在 android 应用程序中检查注解的需要。它看起来像这样:

public class DatabaseConfigUtil extends OrmLiteConfigUtil {
  private static final Class<?>[] classes = new Class[] {
    SimpleData.class,
  };
  public static void main(String[] args) throws Exception {
    writeConfigFile("ormlite_config.txt", classes);
  }
}

我需要一种方法来每隔一段时间运行这个 java 可执行文件。总结一下:我需要一种在 Android Studio 中运行 java 可执行文件的方法。它可以通过 Gradle,另一个运行配置,JUnit 测试的一部分,我真的不在乎。我只需要能够从 AndroidStudio 运行它。

这是我当前的 Gradle 脚本:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.5.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 18
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile project(':AndroidLibrary')

    compile 'com.j256.ormlite:ormlite-android:4.47'
}

【问题讨论】:

    标签: android android-studio ormlite android-gradle-plugin


    【解决方案1】:

    我为此使用 IDE 配置。以下是如何实现它:

    1. 在菜单中选择运行 -> 编辑配置
    2. 按加号图标 -> 应用程序
    3. 名称:OrmLite DB config,主类:com.yourclasspath.DatabaseConfigUtil,使用模块的类路径:main
    4. 切换到您的主构建配置并在Before launch 中按加号图标 -> 运行另一个配置并选择 OrmLite DB 配置

    现在每次构建主配置时,它也会执行 DatabaseConfigUtil。

    如果您不想在每次构建之前运行 DatabaseConfigUtil,只需跳过第 4 步,然后从工具栏中运行图标旁边的配置选择中运行它。

    【讨论】:

    • 我认为将它集成到 gradle 构建文件中会比在 IDE 中配置一些东西更好,也更通用。特别是如果几个人在同一个项目上工作,在这种情况下,每个人都需要确保正确配置他们的 IDE。
    • 我同意上述评论。但是,Android Studio(在 IntelliJ 上运行)能够共享运行时配置,从而解决多人问题。不过仍然对基于 Gradle 的解决方案感兴趣。
    猜你喜欢
    • 2014-06-03
    • 1970-01-01
    • 2018-12-25
    • 2014-11-17
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 2021-08-26
    • 1970-01-01
    相关资源
    最近更新 更多