当前位置: 首页 > 知识库问答 >
问题:

gradle忽略FileNotFoundException以加载属性文件

闻人飞白
2023-03-14

通过参考关于的代码。属性生成中加载。gradle,我想知道当文件不存在时如何忽略。

目前,下面的build.gradle文件抛出FileNot找到异常,无法继续编译。

def Properties properties = new Properties()
try{
    properties.load(project.rootProject.file("developer.properties").newDataInputStream())
}

android {
    defaultConfig {
        buildConfigField 'boolean', 'PrintLog', properties.getOrDefault("print.log", "false")
    }
}

我想要的是让开发者编译。属性是否存在。我怎样才能做到这一点?

共有1个答案

乐宜民
2023-03-14

您可以使用简单的try-catch块来实现它,如下所示:

android {
    ....
    def developerPropertiesFile = file(getRootDir().getPath() + '\\developer.properties')
    def developerProperties = new Properties()
    try {
        developerProperties.load(new FileInputStream(developerPropertiesFile))
    } catch (FileNotFoundException e) {
        developerPropertiesFile = null;
    }
    ...
}

使用前,您可以检查:

if (developerPropertiesFile != null) {
     ...
 }
 类似资料:
  • 我的一个tomcat安装有问题。 webapp没有获取特定的log4j。属性文件。唯一可行的方法是删除$CATALINA_BASE/conf/logging。属性文件并添加我的log4j。$CATALINA_BASE/lib/文件夹中的属性文件。 我想知道如何配置它来获取我的webapp特定属性文件(最好不删除conf/logging.properties)。 我试着把log4j放进去。WEB-I

  • 我在应用程序中设置了以下Maven多模块。属性以及模块A中相应的属性类和配置: 应用程序。特性: 以及 然后是模块C和我的应用程序: 相关: 还有豆子测试。属性文件: 从中删除最后一个bean时,应用程序将启动。但是,有了这个bean定义,我得到了以下错误: 描述:无法注册在类路径资源[c/CConfiguration.class]中定义的bean“cityProperties”。已在文件[/mo

  • 问题内容: 我使用Hibernate 5.2.5(如果重要的话,也可以使用kotlin和spring 4.3.5),并且我希望延迟加载类的某些字段。但是问题是所有字段都立即加载,我没有任何特殊的Hibernate设置,也没有使用Hibernate.initialize()。 这就是我的查询方式 TaskRepoImpl: TaskService: 并输出: 请告知我的代码出了什么问题以及如何使Hi

  • 问题内容: 我在GlassFish 4上使用java.util.logging。 我正在定义自己的类,以通过定义System属性 来初始化。 我的班级加载文件,将其与其他属性文件合并,并进行一些自定义替换。 以下是我文件的相关部分: 我正在使用标准并将其配置为使用格式化程序。 但是字符串被完全忽略了。相反,SimpleFormatter使用其默认格式。 我哪里做错了? 问题答案: 我假设系统属性是

  • 我在尝试添加

  • 问题内容: 我有一个标准POJO,其中包含一组属性。POJO已被注释为,以便作为文档保留在MongoDB中。 我如何(注释?)可以忽略/避免POJO中的属性之一被保留? 问题答案: 该注释是。参见http://static.springsource.org/spring- data/data-document/docs/current/reference/html/#mapping-usage-