设置 Gradle 以在 Android Studio 中运行 Java 可执行文件

2023-11-26

所以事情是这样的:我使用的是 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'
}

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

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

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

设置 Gradle 以在 Android Studio 中运行 Java 可执行文件 的相关文章

随机推荐

  • Clojure:减少与应用

    我理解之间的概念差异reduce and apply reduce list 1 2 3 4 5 translates to 1 2 3 4 5 apply list 1 2 3 4 5 translates to 1 2 3 4 5 然而
  • 如何从MySql中的表中删除最后一条记录(有条件)

    我有一个登录时间像这样的表 id user id datetime 1 1 2011 01 17 18 51 05 2 1 2011 01 18 18 51 05 3 1 2011 01 19 18 51 05 4 2 2011 01 19
  • 获取连接到 SignalR hub 的侦听器和客户端的数量

    有没有办法找出侦听器的数量 连接到集线器的客户端 如果至少有一个客户端已连接 我正在尝试运行 启动一项任务 否则不启动它 HubName taskActionStatus public class TaskActionStatus Hub
  • 致命:不是 git 存储库:“.git”错误

    我创建了一个预提交挂钩 它获取数据库转储并将其保存在我的应用程序 文件夹下的文件中 该文件也在 git 存储库中 保存后我将文件添加到提交列表中 以下是我的预提交文件中的代码 D xampp mysql bin mysqldump u ro
  • python:用条件替换列表中的元素

    我正在尝试使用 python 执行以下操作 但出现了奇怪的行为 假设我有以下列表 x 5 4 3 2 1 现在 我正在做类似的事情 x x gt 3 3 这给出 x 5 3 3 2 1 为什么只有第二个元素发生变化 我期待着 3 3 3 2
  • VBscript 相对路径

    我正在尝试使用以下脚本 顺便说一下 它是由批处理文件调用的 在 Windows XP 中解压缩文件 strZipFile C test zip name of zip file outFolder C destination folder
  • DateTime.ParseExact FormatException 字符串未被识别为有效的日期时间

    我完全被这个难住了 据我所知 我读过的文档和其他帖子都说这应该可行 我一定错过了一些愚蠢的东西 但我就是看不到它 我收到一个 FormatException 消息 字符串未被识别为有效的日期时间 在以下代码行上 return DateTim
  • 全局命名空间与本地命名空间性能差异

    为什么在一个函数中执行一组命令 def main do stuff return something print main 会倾向于跑步1 5x to 3x在 python 中执行命令比在顶层执行命令快几倍 do stuff print s
  • 安装 davfs2 卷时无法打开 docker 容器中的熔断器设备

    当我尝试在 docker 容器上挂载 davfs2 卷时遇到以下错误 geoserver 8e8091d97157 mount owncloud sbin mount davfs loading kernel module fuse sbi
  • 如何在Python中的for循环中删除列表元素? [复制]

    这个问题在这里已经有答案了 我有一个清单 a a b c d e 我想在 for 循环中删除此列表中的元素 如下所示 for item in a print item a remove item 但这不起作用 我能做些什么 不允许在使用 a
  • DDK“你好世界”

    如何开始为 Windows 编写驱动程序 是否有某种官方 DDK Hello World 示例 虽然我确信一开始这会超出我的想象 但最终我想创建一个简单的 MIDI 驱动程序 就像枫木虚拟 MIDI 电缆其中 MIDI 消息来自用户应用程序
  • 将 div 高度设置为父级的 100%

    我想要我的网页具有以下布局 header navigation details 其中导航窗格 动态生成的内容 包含数百个元素 我希望在导航窗格上创建一个垂直滚动条 以便该窗格的高度减去标题的高度 我的页面大致结构如下 div div div
  • 在 Mac OS X 上的 Docker 中启用远程 API (boot2docker)

    我似乎不知道如何在使用 boot2docker 时启用远程 API 我尝试按如下方式使用 dockerode Docker require dockerode docker new Docker socketPath var run doc
  • JVM 内存:为什么任务管理器上的内存与 JProbe(或 JConsole 工具)不同

    我面临的问题是我的应用程序使用的内存只有100MB 之后减少了50MB 但在窗口任务管理器上它显示150MB并且总是保持或增加但不减少 我们如何减少任务管理器上的内存 私人工作集 你所看到的JConsole 或其他监控工具 是java内存正
  • 为什么我似乎无法强制 Oracle 11g 为单个 SQL 查询消耗更多 CPU

    我有一些在巨大的表上运行的巨大查询 这些查询似乎存在 CPU 瓶颈 并且运行了数小时 据我所知 Oracle 在 11g 第 2 版中有很多新功能 可以在内部并行化查询的执行 然而 无论我在查询中添加何种提示 我似乎都无法在数据库框中使用超
  • 使用 python 从网页中提取所有链接

    在 Udacity 的计算机科学简介课程之后 我正在尝试制作一个 python 脚本来从页面中提取链接 下面是我使用的代码 我收到以下错误 NameError 名称 页面 未定义 这是代码 def get page page try imp
  • dicts 在 python 3 中不可排序?

    为什么字典在 python2 中是可排序的 但在 python3 中却不能 我在文档中找不到它 Python 3 3 4 default Feb 11 2014 16 14 21 gt gt gt sorted a a b b Traceb
  • mysqli 中的位标志使用 fetch_field_direct 意味着什么

    使用 mysqli 我可以获取有关字段的信息 如下所示 field mysqli fetch field direct result fieldCount 我可以使用从结果中获取字段标志 field gt flags PHP 手册说这会返回
  • ASP.NET MVC 2 RC 客户端验证不起作用

    我似乎无法在 MVC 2 RC 应用程序上进行任何客户端验证 我的模型有以下内容 public class ExampleModel Required ErrorMessage Test1 is required DisplayName T
  • 设置 Gradle 以在 Android Studio 中运行 Java 可执行文件

    所以事情是这样的 我使用的是 Android 版 ORMLite 它使用注释来在 Android 中进行映射 如您所知 Android 中的注释速度很慢 ORMLite 的开发者已经意识到这一点 因此他们添加了运行 java 可执行文件来生