我的Maven2之旅:六.在Maven工程中将资源文件打包
2008-03-06 16:55
267 查看
在Java项目中不只是jav文件,经常会有许多资源文件,如属性文件,图片资源什么的,如何把它们也一起加载到Maven工程中去呢?这个问题不难,利用resource就可以达到这个目的.因为${basedir}/src/main/resources都会编译到jar文件中,而且该目录下的内容将直接位于jar文件的顶部.
下图是在前面已经用到过的程序Source Comparer程序,唯一不同的是它的Browse按钮是图片式的.
具体实现的代码是这样的:
String location="/compare.GIF";
URL imageUrl=BrowsePanel.class.getResource(location);
browseBtn = new JButton(new ImageIcon(imageUrl));
执行mvn package后,用解压工具如WinRar打开MavenResource-1.0-SNAPSHOT.jar,可以发现图片compare.GIF已经被打进去了.
如果打开cmd窗口,进入target目录,执行命令:
java -cp MavenResource-1.0-SNAPSHOT.jar com.citigroup.junglesong.Inlet
执行的结果和在Eclipse中效果一致,这里就不再贴出了.
上面说的是程序执行时使用资源的情况,如果是测试代码需要使用资源的话,可以${basedir}/src/test下新建一个resources目录,将资源放入其中,测试代码可以使用这样的方式使用资源:
InputStream is = getClass().getResourceAsStream( "/test.properties" );
可见测试代码加载资源和主体代码加载资源是很相似的.
通过对pom文件中build 节点的修改,Maven还可以进行资源过滤,因为目前一时用不到暂时搁置一下,有兴趣或需要的人可以到http://maven.apache.org/guides/getting-started/index.html#How%20do%20I%20filter%20resource%20files? 去看看.
注:转自http://www.blogjava.net/sitinspring
下图是在前面已经用到过的程序Source Comparer程序,唯一不同的是它的Browse按钮是图片式的.
具体实现的代码是这样的:
String location="/compare.GIF";
URL imageUrl=BrowsePanel.class.getResource(location);
browseBtn = new JButton(new ImageIcon(imageUrl));
执行mvn package后,用解压工具如WinRar打开MavenResource-1.0-SNAPSHOT.jar,可以发现图片compare.GIF已经被打进去了.
如果打开cmd窗口,进入target目录,执行命令:
java -cp MavenResource-1.0-SNAPSHOT.jar com.citigroup.junglesong.Inlet
执行的结果和在Eclipse中效果一致,这里就不再贴出了.
上面说的是程序执行时使用资源的情况,如果是测试代码需要使用资源的话,可以${basedir}/src/test下新建一个resources目录,将资源放入其中,测试代码可以使用这样的方式使用资源:
InputStream is = getClass().getResourceAsStream( "/test.properties" );
可见测试代码加载资源和主体代码加载资源是很相似的.
通过对pom文件中build 节点的修改,Maven还可以进行资源过滤,因为目前一时用不到暂时搁置一下,有兴趣或需要的人可以到http://maven.apache.org/guides/getting-started/index.html#How%20do%20I%20filter%20resource%20files? 去看看.
注:转自http://www.blogjava.net/sitinspring
相关文章推荐
- MAVEN 工程打包resources目录外的更多资源文件
- MAVEN 工程打包resources目录外的更多资源文件
- maven工程打包成runnable的jar包,拷贝资源文件和依赖jar包
- maven工程打包成runnable的jar包,拷贝资源文件和依赖jar包
- Eclipse Maven工程 打包jar文件(包含依赖jar) 打包过程与执行说明
- Maven 使用指南(7): 使用Maven打包资源文件
- maven工程打包成runnable的jar包,拷贝资源和依赖jar包
- Android工程依赖:android中打包含有Activity以及资源文件的jar包在工程中调用
- android中打包含有Activity以及资源文件的jar包在工程中调用
- Web、Java源代码、资源文件在Maven工程中的文件路径
- android中打包含有Activity以及资源文件的jar包在工程中调用
- 利用Maven打包时,如何包含更多的资源文件
- 使用maven为不同环境打包资源文件
- maven工程打包成runnable的jar包,拷贝资源和依赖jar包
- 利用MAVEN打包时,如何包含更多的资源文件
- 利用MAVEN打包时,如何包含更多的资源文件
- 如何把使用到android res文件夹下面资源(R.xx.xx)的工程打包成jar文件,供其它项目使用
- Maven工程中jetty插件运行web应用时静态资源文件修改不能实时生效的问题
- 利用MAVEN打包时,如何包含更多的资源文件
- 利用MAVEN打包时,如何包含更多的资源文件