通过build.gradle任务(版本5.0)在项目目录中创建version.txt文件 [英] create version.txt file in project dir via build.gradle task(gradle 5.0)

查看:299
本文介绍了通过build.gradle任务(版本5.0)在项目目录中创建version.txt文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

旧问题已过时(创建版本通过build.gradle任务将项目目录中的.txt文件)

我当前的任务:

task exportVersion {
    def file = project.layout.buildDirectory.file("version.txt")
    def f = file.get().asFile
    f.text = "$project.android.defaultConfig.versionName"
}

这是稍微重写的任务,用于删除不兼容"文件.更改gradle 5.0,但仍显示警告:

This is slightly rewritten task to remove "incompatible" change of gradle 5.0 but warnings are still shown:

DefaultSourceDirectorySet构造函数已被弃用.计划在Gradle 5.0中将其删除.请改用ObjectFactory服务来创建SourceDirectorySet的实例.

The DefaultSourceDirectorySet constructor has been deprecated. This is scheduled to be removed in Gradle 5.0. Please use the ObjectFactory service to create instances of SourceDirectorySet instead.

已弃用ProjectLayout.directoryProperty()方法.计划在Gradle 5.0中将其删除.请改用ObjectFactory.directoryProperty()方法.

The ProjectLayout.directoryProperty() method has been deprecated. This is scheduled to be removed in Gradle 5.0. Please use the ObjectFactory.directoryProperty() method instead.

已弃用ProjectLayout.fileProperty()方法.计划在Gradle 5.0中将其删除.请改用ObjectFactory.fileProperty()方法.

The ProjectLayout.fileProperty() method has been deprecated. This is scheduled to be removed in Gradle 5.0. Please use the ObjectFactory.fileProperty() method instead.

如何使用ObjectFactory重写任务? 该项目是一个Android应用程序,但是我认为这并没有太大的改变.

How to rewrite task using ObjectFactory? The project is an Android application, but I think this is not changes task much.

推荐答案

在您的任务exportVersion中,您没有使用所示警告中列出的任何不赞成使用的方法:也许这些警告与脚本的另一部分有关?

In your task exportVersion, you don't use any of the deprecated methods listed in the shown warning: maybe these warning concern another part of your script?

对于需要使用ObjectFactory.xyz方法的不推荐使用的代码:您可以使用Project.getObjects()方法简单地获取ObjectFactory的实例,请参见

For deprecated code where you need to use ObjectFactory.xyz method: you can simple get an instance of ObjectFactory using Project.getObjects() method, see https://docs.gradle.org/5.0-rc-3/javadoc/org/gradle/api/Project.html#getObjects--

例如,已弃用的代码,例如

For example, deprecated code like

project.layout.directoryProperty() 

可以改写为:

project.getObjects().directoryProperty() 

这篇关于通过build.gradle任务(版本5.0)在项目目录中创建version.txt文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆