文档章节

解决Gradle工程编译源文件忽略xml,properties,config等文件的问题

asay
 asay
发布于 2016/05/12 15:43
字数 341
阅读 2536
收藏 4

如果你使用Gradle构建项目后,发现.java文件同级目录中.xml文件没有被拷贝到.class的输出目录中,可以在项目配置中加入

sourceSets.main.java.srcDirs = ['src']

sourceSets.main.resources.srcDirs = sourceSets.main.java.srcDirs

原理:

task compileJava,任务类型JavaCompile ,只编译".java"文件,其他类型文件全部忽略,输出目录为 build/classes/main。

task processResources,任务类型Copy,忽略".java"文件,其他文件全部拷贝到 build/resources/main目录。

将resource指向src路径后,在任务processResources中,会将所有.xml等配置文件拷贝到build/resources/main中,而默认IDEA会将这个路径加入到classpath中的。

扩展:

还有些配置文件放在指定目录中,比如指定一个'config'目录用来存放一些数据库配置参数。

读取时使用 class.getClassLoader().getResourceAsStream() 方法读取,这些文件的目录也要加入到classpath中的。可以在工程中配置

dependencies {   
  // 将config目录加入runtime classpath中
  runtime files('config') 
}
这样这个目录中的文件就可以在运行时加载了,到现在希望你没有被ClassLoader指定路径的使用搞晕。
 

© 著作权归作者所有

共有 人打赏支持
asay
粉丝 0
博文 14
码字总数 5272
作品 0
郑州
Android组件化方案

版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: http://blog.csdn.net/guiying712/article/details/55213884 ,本文出自:【张华洋的博客】 Android组件化项目地址:Android...

guiying712
2017/02/15
0
0
网易 Android工程模板化实践

背景 我们网易前端技术部 - 移动技术组作为公司的移动端基础技术部门,主要为其他部门提供解决方案、技术支持和产品孵化。在几年的积累过程中,我们拥有一些自己的框架和 SDK,如轻应用框架、...

微笑的江豚
2016/08/12
59
0
Android Studio导入工程的正确姿势

如果你有很好的网络环境 好的网络环境,这里不是指:我家网速带宽100M,电信的光纤接入。 而是:能翻墙。因为如果本机的gradle和将要导入的工程版本不匹配,Studio就回去下载对应版本的gradl...

拉风的道长
2015/12/27
4K
2
android.usedeprecatedndk=true在哪设置

Error:(12, 0) Error: NDKintegration is deprecated in the current plugin. Consider trying the newexperimental plugin. For details, seehttp://tools.android.com/tech-docs/new-build......

xunfang
2016/01/29
1K
0
翻译--Gradle之Java工程入门

我们已经看到Gradle是一个通用构建工具,它可以完成相当多的任务,只要你能在脚本里定义好。如果你没写好脚本,它就啥也干不成。 大部分Java项目都是这样的流程:编译源文件,单元测试,打成...

davelet
2014/01/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Mac OS X下Maven的安装与配置

Mac OS X 安装Maven: 下载 Maven, 并解压到某个目录。例如/Users/robbie/apache-maven-3.3.3 打开Terminal,输入以下命令,设置Maven classpath $ vi ~/.bash_profile 添加下列两行代码,之后...

TonyStarkSir
今天
3
0
关于编程,你的练习是不是有效的?

最近由于工作及Solution项目的影响,我在重新学习DDD和领域建模的一些知识。然后,我突然就想到了这个问题,以及我是怎么做的? 对于我来说,提升技能的项目会有四种: 纯兴趣驱动的项目。即...

问题终结者
今天
4
0
打开eclipse出现an error has occurred see the log file

解决方法: 1,打开eclipse安装目录下的eclipse.ini文件; 2,打开的文本文件最后添加一行 --add-modules=ALL-SYSTEM 3,保存重新打开Eclipse。...

任梁荣
昨天
4
0
搞定Northwind示例数据库,无论哪个版本的SQLServer都受用

Northwind数据库 从这里可以找到突破口: http://social.msdn.microsoft.com/Forums/zh-CN/Vsexpressvb/thread/8490a1c6-9018-40c9-aafb-df9f79d29cde 下面是MSDN: http://msdn2.microsoft......

QQZZFT
昨天
1
0
mysql主从同步,安装配置操作

准备 两台mysql服务,我这里准备了如下: 主库:192.168.176.128 从库:192.168.176.131 如何在Linux上安装mysql服务,请看https://blog.csdn.net/qq_18860653/article/details/80250499 操作...

小致dad
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部