我与开源软件的一次亲密接触

最近公司的一个项目需要用到生成报表的功能,由于只需要用到导出成xml,CVS,excell,和pdf的功能,所以我选择了displaytag。
但是这个东东有很多缺点,比如说文档太少,不够详细,例子不够简单。但是我主要遇到的问题是displaytag生成文档的时候那个url,不知道是哪个developer用这中形式的url:http://loclahost:8080/displaytag-examples-1.2/example-export.jsp?d-5394226-e=2&6578706f7274=1 .
关键是这个"-",超恶心, struts2的ognl表达式不支持这个东西,还有一数字开头的也不行。既然是开源软件,遇到令人难受的了当然要改。
先去下载displaytag的源文件还有编译好的jar包,大概先看了一下,大概是用maven来实现编译和打包的。这可能是开源软件为了摆脱对IDE的依赖吧。

中间过程是很艰辛的,耗费了我差不多一天的时间(上午打了半天游戏*^__^*)。解决方法是这个样子的。安装maven的过程省略,大概跟手动安装jdk差不多

1.先找到需要改的java文件,改过之后,到项目根目录下用命令 "mvn test"先测试一下,不管怎样,我测试不通过,貌似是它们的测试代码用到了我改的那个东西,是硬编码进去的(测试代码太垃圾了)
2.于是想到要跳过测试,具体是这样子的,同样命令"mvn package -Dmaven.test.skip=true" ,不算是太难就直接帮你打成jar包了。

跟Eclipse稍微不同的是,它可以帮你将一些tld文件和一些说明一起放到jar包里面,这个操作在Eclipse里面我还不知道怎么操作。好了,问题解决了,但是我还不知道怎么提交我改的这个代码,让别人也分享一下,要是这个项目放到google code上就好了。改天再研究


maven命令大全:
validate,验证工程是否正确,所有需要的资源是否可用。
compile,编译项目的源代码。
test-compile,编译项目测试代码。
test,使用已编译的测试代码,测试已编译的源代码。
package,已发布的格式,如jar,将已编译的源代码打包。
integration-test,在集成测试可以运行的环境中处理和发布包。
verify,运行任何检查,验证包是否有效且达到质量标准。
install,把包安装在本地的repository中,可以被其他工程作为依赖来使用
deploy,在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
generate-sources,产生应用需要的任何额外的源代码,如xdoclet。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值