codecamp

第12章 Using the Gradle Graphical User Interface 使用 Gradle 图形化用户界面

除了支持传统的命令行界面,Gradle 也提供了一个图形化用户界面(GUI)。这是一个独立的用户界面,可以通过加上 --gui 选项来启动。

Example 12.1. Launching the GUI

gradle --gui

注意:此命令行窗口被将锁定,直到 Gradle GUI 被关闭。如果是在 *nix 系统下,则可以通过 (gradle --gui&) 让它作为后台任务运行。

如果你在你的 Gradle 项目目录下运行 Gradle GUI,你应该会看到一个task 树。

Figure 12.1. GUI Task Tree

最好是从 Gradle 项目目录运行此命令,这样对 UI 的设置就可以存储在你的项目目录中。当然,你也可以先运行它,然后通过在 UI 中的设置Setup 选项卡,改变工作目录。

这个 UI 上面是4个选项卡,下面则是输出窗口。

12.1. Task Tree 任务树

Task 树显示了所有项目和它们的 task 的层次结构。双击一个 task 可以执行它。

这里还提供了一个过滤器,可以把比较少用的 task 隐藏。你可以通过过滤器(Filter)按钮切换是否进行过滤。通过编辑过滤器,你可以对哪些任务和项目要显示进行配置。隐藏的任务显示为红色。注意:新创建的任务默认情况下是显示状态(而不是隐藏状态)

任务树的上下文菜单会提供以下选项:

  • 执行忽略依赖关系。这使得重新构建时不去依赖项目(与 -a 选项一样)
  • 将任务添加到收藏夹(见收藏夹 Favourites 选项卡)
  • 隐藏选择的任务。这将会把它们添加到过滤器中。
  • 编辑 build.gradle 文件。注意:该操作需要 Java 1.6 或更高的版本,并且要求在你的操作系统中关联 gradle 文件。

12.2. Favorites 收藏夹

收藏夹选项卡用来储存经常执行的命令。这些命令可以是复杂的命令(只要它们符合 Gradle 的语法),你可以给它们设置一个显示名称。它用于创建一个自定义的命令,来显示地跳过测试,文档,例子。你可以称之为“快速构建”。

你可以根据自己的喜好,对收藏夹进行排序,甚至可以把它们导出到磁盘,并在其他地方导入。如果你在编辑它们的时候,选上“始终显示实时输出”,它只有在你选上“当发生错误时才显示输出”时有效。它会始终强制显示输出。 

12.3. Command Line 命令行

命令行选项卡是直接执行单个的 Gradle 命令的地方。你只需要输入在 'gradle' 后面经常输入的命令即可 。它也对要添加到收藏夹的命令提供了先去尝试的地方。

12.4. Setup 设置

用来设置常用的配置

Figure 12.2. GUI Setup

Current Directory (当前目录)

定义了你的 Gradle 项目(通常是 build.gradle 所在的位置)的根目录。

Stack Trace Output (堆栈跟踪输出)

这决定了当出现错误时,有多少信息定到堆栈跟踪。注意:如果你在命令行或收藏夹选项卡上指定了堆栈跟踪级别,将会覆盖这里的设置。

Only Show Output When Errors Occur(只在出现错误时显示输出)

启用此选项将在 task 执行时隐藏任何输出,除非构建失败。

Use Custom Gradle Executor - Advanced feature(使用自定义的 Gradle 执行器 - 高级功能)

这为你提供了启动 Gradle 命令行的替代方法。这是很有用的。如果你的项目需要在另一个批处理文件或 shell 脚本中做一些额外的配置(比如指定一个初始化脚本)。

第11章 Using the Gradle Command-Line 使用 Gradle 命令行
第13章 Writing Build Scripts 编写构建脚本
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }