❶ idea配置artifacts for war
近期有个古老的项目,需要生成war包,研究了半天时间,把注意事项梳理下,发出来记录下。
项目时一个web app项目,需要部署到tomcat服务中,运行项目需要配置Project Structure.
Project菜单:
Projcet name : 项目名称
Project SDK :编译环境JDK
Project Language level : 选择要支持的java语言级别。选定的级别将被用作项目默认值。
可用选项对应于JDK版本:
1.3 - 普通的旧Java
1.4 - “断言”关键字
5.0 - 'enum'关键字,自动装箱等
6.0 - @Override在接口
7.0 - 钻石,ARM,多捕获等
8.0 - Lambda支持,类型注释等
可以为您的任何模块设置单独的语言级别 。
请注意,如果目标级别没有明确定义(编译器选项-target),则认为它与源语言级别相同。
因此,如果-target没有明确定义,它将与语言水平同步。(这里配置的级别和Proferences-Build-Compiler下的配置需要一致)
Project Compiler output :编译后文件输出地址(主要指class文件)
Moles:
这里需要注意Language Level需要保持一致,Mark as需要按内容标记好,Paths下的可以直接选
Web目录配置
黄框中的内容是web.xml的地址
红框中的web Resource Directories配置需要指向页面资源目录
Libraries配置所需要的依赖jar包
Facets就是Moles下的web配置
Artifacts(重点)
这个配置项可以理解为对输出的目录进行定型,调试可以先创建一个exploded,打包可以选择archive生成war包
output Layout中,左边是即将输出的目录结构,右边是可选择的内容
例如我想把编译后的class文件加入到WEB-INF下的class目录下,就可以这样配置:
直接创建一个classes目录,然后创建一个compile output在classes下就可以在编译时将编译后的文件加入到classes目录下;
以上就是重点的需要理解的配置。
你好,这些是打包好的部署包,将这些直接丢如Tomcat WebApp目录下就可以通过Web访问了,如果你想看源码,用解压缩软件都可以的,就看这包里面有没有源码了,zip ,winRAR ,7-zip都可以解压出来,如果想看源码,没有的话,找个反编译的软件把class文件拖进去就可以看到了..jd-gui 这个可以,网上找找
❸ 关于Java打war包
比较暴力的方法:
在MyEclipse中新建一个和你需要打包war包项目相同名字的web项目,把做好的类和文件都考到项目对应目录下面对应的位置上去,然后MyEclipse会语法检查器会报错,不理睬。
使用MyEclipse打war包即可。
❹ 如何快速反编译JAVA的jar包或war包
有些时候我们面对一个class文件jar包或者war包,很想知道里面有什么参数,有什么方法,但是又没有文档,又没有源代码,那怎么办呢。
没关系,我们可以反编译这些class文件或jar包或war包。
java的class文件存储的是字节码,这些基本知识在此就不必啰嗦了。反正就是其存储的信息足够可以反编译出来。
我们下载TTools中dist文件夹下的TdeCompile.jar可执行jar包,然后就可以开始反编译工作了。使用方法很简单,在命令行输入命令即可,如下
[plain] view plain
java -jar TdeCompile.jar xxx.class
注意如果你不在TdeCompile的同目录下,需要写上TdeCompile.jar的路径,其次跟一个参数xxx.class,xxx代表你所要反编译的文件的文件名。输出即是xxx.class.txt,它是反编译过后的文件,txt文本格式,所在目录通xxx.class。请确保你在xxx.class目录下有写权限。
我们也可以直接操作一个jar包或war包。如:
[plain] view plain
java -jar TdeCompile.jar xxx.jar
程序可以自动识别是class文件还是jar或war包,如果是jar包或war包,则首先自动解压缩,解压缩的目录为xxx.jar的同一个目录,然后逐个反编译class文件,在每个class文件的旁边输出一个xxx.class.txt文件。请确保你在jar包所在目录有写权限。
TdeCompile的原理是利用了ASM去读取每一个class文件的信息。
❺ java反编译war包得到JAVA文件,再怎么执行成CLASS文件并打成WAR包
压缩java文件, 打成war包
1.打开要打包的文件夹(cd 目录)
2.配置
set path=C盘下jdk1.5.0_05/bin所在的目录 --你自己的jdk安装目录
set classpath=. 当前路径
3.jar cvf tt.war ./ --(./表示当前文件下所有文件,要有)
❻ war包如果里面的一个文件想要修改怎么编辑啊
1、打开war文件找到web-info下面的class文件夹,这里是*.java编译后的文件。
❼ idea打war包没有web.xml
如图,通过maven project创建了个web app项目:
配置个tomcat :
运行调试,发现生成的target,没有web.xml :
解决办法:
写上命令:
此时编译,就能得到完整的target (有web.xml了):
❽ intellij idea无法将编译的class文件及新建的资源文件打进war包
要用F6调试,不要依赖氦籂份饺莓祭逢熄抚陇于F5,按F5的话,迟早会走到class文件里 1.首先应该会停在断点那吧,如果不停在断点那,那就不应该会停下来。 2.在断点那停下后,你按F6一步步调试,在你走到class文件前那句是什么,按Ctrl+点击那句类或方法