最近公司的一个项目需要用到生成报表的功能,由于只需要用到导出成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。
分享到:
相关推荐
《开源软件成熟度评估及选型指南》内容主要来自近几年我们对开源软件评估与应用选型的研究成果,以及对优秀的开源软件的筛选整理。内容主要面向那些希望将开源软件部署在其应用环境中,或利用开源软件进行二次开发的...
本管理办法规定了开源软件的管理内容,包括准入管理、上线管理、版本管理、日常运维、质量评估到下线一整套管理准则和管理流程。准入管理要求对即将引入到生产系统中的开源软件,通过对产品特性、产品成熟度、产品...
开源软件与云计算的紧密关系体现在两个方面:一方面,开源软件是云计算基础设施的重要组成部分,许多云计算平台依赖开源软件来构建和创新服务,如Linux操作系统、Apache服务器等。开源生态为云计算产业提供了...
2021 年开源软件供应链安全风险研究报告 本报告对 2021 年开源软件供应链安全风险进行了深入研究和分析,旨在帮助读者了解开源软件供应链安全风险的现状、趋势和解决方案。本文将从开源软件漏洞发展现状、开源组件...
这款软件的核心特点在于其开源性,这意味着它的源代码对外公开,开发者和爱好者可以自由地查看、修改和分享代码,促进了社区协作与创新。Java语言作为其编程基础,为软件的稳定性和跨平台能力提供了坚实的支持。 ...
中国的开源软件产业研究报告(2022)揭示了开源软件在中国的发展现状、挑战与前景。开源软件是指软件的源代码对外公开,允许用户自由使用、修改和分发,这一模式在云计算、技术创新和法制建设等领域产生了深远影响。...
开源桌面贴片机软件,开源SMT取放硬件和软件
关于开源软件授权协议对于知识产权理论和实践的一些思考
源软件的知识产权问题源于其独特的产权模式,与传统的闭源软件相比,开源软件的使用权、修改权和分发权通常更为开放。企业使用开源软件时,可能会遇到一系列知识产权风险,这些风险主要体现在版权侵权、专利侵权和...
2018年是开源软件发展迅速的一年,good year。冒出的软件不乏dubbo等等
开源软件之道-java 开源软件之道-java
10. 结论:开源软件已经成为企业中的一个重要组成部分,它可以帮助企业提高效率、降低成本、增强竞争力等。随着计算机技术的发展,开源软件的发展前景将更加广阔。 开源软件已经成为企业中的一个重要组成部分,它...
开源心电图分析软件是EP Limited推出的一款专用于心电图(ECG)数据处理与分析的工具。这款软件的核心特点在于其开放源代码的特性,允许用户进行自定义开发和二次利用,促进了医学研究与临床实践的结合。在提供的...
开源软件是一种公开源代码的软件,允许用户自由使用、修改和分发,是信息技术领域中的一个重要概念。开源软件的优势在于其透明性、可定制性、安全性以及社区支持。开源软件的源代码可供公众查看,这使得任何有技术...
开源软件实战_第一次作业.docx
随着科技的不断进步和数字化转型的深入推进,开源软件作为一种创新的软件开发模式,在全球范围内受到广泛关注。在中国,开源软件产业已经逐渐形成了独特的发展态势。《2022年中国开源软件产业研究报告》深入剖析了...
FreeSCADA是一款基于WPF(Windows Presentation Foundation)技术的开源工业组态软件,它提供了全面的解决方案,使得用户能够快速构建自己的监控系统。这个软件包含了丰富的功能,如组态界面设计、内置脚本语言以及...
【描述】: ClamWin是一款免费且开源的杀毒软件,其源码库clamwin-0.88.1-src.zip提供了完整的开发信息,让开发者可以深入了解其工作原理,并可根据需要进行定制和改进。 【知识点详解】 1. **开源软件**:开源意味...