java项目导入到eclipse-eclipse导入ant项目
# Eclipse 项目结构
如上图 Gif 演示,在 Eclipse 下,一般中小项目的项目结构基本都是这种模式的,所以我们这里也通过网上一个开源项目 JspRun 进行讲解。
下载地址:
# Eclipse 项目配置
如上图箭头所示,在 IntelliJ IDEA 下是支持直接打开 Eclipse 项目的java项目导入到eclipse,无需导入。
如上图标注 1 所示,选择项目的 .project 文件打开即可。
如上图标注 1 所示,IntelliJ IDEA 能自动识别到可编译的 src 类目录java项目导入到eclipse,所以这里文件夹是蓝色的。
如上图标注 2 所示,Java Web 项目 WebRoot 是整个项目输出的根目录,所以这个区域也是非常重要的,只是无需配置。
如上图标注 3 所示,WEB-INF 下的一些配置文件,以及两个目录 classes 和 lib 都是至关重要的,其中 classes 是红色目录,也就是被排除的,因为编译产生的文件对开发来讲是没有多大意义的,所以进行了排除,但是这并不会影响容器去使用它。
如上图标注 1 所示,因为这个项目是单 Module 的,所以我们这里在 Project compiler output 可以选择项目 WEB-INF 下的 classes编译目录。
如上图标注 1 所示,这是一个单 Module 的项目,Module 的编译输出目录可以跟 Project 的项目输出目录一致,都是 WebRoot 下的 classes 目录。
如上图所示,引入依赖包支持 jar 包和目录,以及已经导入项目的 Libraries 中的依赖包。多 Module 的项目还可以依赖其他 Module。
由于我们刚刚去掉了红圈中的所有依赖包,所以我们现在还需要导入依赖包。在导入之前我们先把项目的 lib 作为一个总的依赖包放置到项目 Libraries 中。如上图 Gif 演示,就是把 lib 目录转换成一个依赖包。这样的好处是,当我们项目需要添加新依赖包时,我们只要放置在 lib 目录下即可自动被项目引入,原因就是我们这里引的是目录,而不是一个一个依赖包。
如上图标注 1 所示,引入刚刚放置好的 Libraries 下 lib 依赖包。
对于传统的 Java Web 项目,我们一般还需要指定配置 web.xml 位置。如上图 Gif 演示,这个一般在 Facts 中进行配置。Facts 可以理解为用于配置项目的框架区,在这里管理项目使用的框架配置文件。这个是 IntelliJ IDEA 特有的一个配置点。
除了 web.xml 一般我们要配置外,其他一些框架,即使我们不在这里配置也是不会影响项目的运行的,但是是有缺点的,比如我们项目中一般都是有 Spring 框架的,而 Spring 是有很多配置文件的,如果我们在这里进行了配置,那你会发现 IntelliJ IDEA 编辑区底部会多出现几个 Spring 项目的设置区,原因就是你告诉了 IntelliJ IDEA,你的项目使用了 Spring 框架,那 IntelliJ IDEA 就会出现其对应的配置功能给你。Hibernate 等其他框架道理一样。
Artifacts 也是 IntelliJ IDEA 特有的一个概念,我们可以理解这里是配置项目最终输出结果的地方。比如 Java Web 项目我们一般必备一个配置就是要配置成一个 war 包展开的方式,这样容器才能运行该项目。上图 Gif 演示的就是配置一个 war 包展开的输出结构。其结构是由于前面的几项配置决定,所以如果前面的 Module 配置没有多大问题,这里可以省去一些配置步骤。但是有些时候我们也是需要做一些修改,比如此项目的输出目录默认生成的是错误,我改为了项目中的 webRoot 目录。
该 Artifacts 配置,等下在配置 Tomcat 的时候也会引用到,所以这里需要重点注意下。
# Tomcat 配置
如上图 Gif 所示,为项目整体的一个 Tomcat 配置过程,有些需要特别讲解的,我们将在下面进行分解。
如上图弹出层所示,IntelliJ IDEA 支持目前市场上主流的应用容器,所以基本上一个 IntelliJ IDEA 足够我们开发常见的项目。但是这里有一点需要提醒的,IntelliJ IDEA 支持这些容器但是不等同于帮我们自带了这些容器的文件,所以上面的 Gif 演示中,原本我只有引入 Tomcat 7,但是为了这个项目我又引入了 Tomcat 6,而引入的 Tomcat 6 我只是指定了其存放的目录位置 IntelliJ IDEA 自动会识别到。
# Tomcat 启动
通过上面的配置,IntelliJ IDEA 环境配置算是配置好了,现在配置下该项目相关的。
打开你的 Mysql,执行下面脚本,创建一个新的数据库和用户:
CREATE DATABASE `jsprun` CHARACTER SET utf8;
CREATE USER 'jsprun'@'localhost' IDENTIFIED BY 'jsprun';
GRANT ALL PRIVILEGES ON jsprun.* TO 'jsprun'@'localhost';
FLUSH PRIVILEGES;
如上图 Gif 演示,我们缺少引入 Tomcat 的依赖包。
如上图 Gif 演示,我们引入 Tomcat 的依赖包之后,可以运行该项目。
如上图所示,为最终项目运行效果图。
# Tomcat 停止
如上图所示,停止按钮是要按两次,第一按完出现一个骷髅头并不是停止,需要再点击一次。
有时候即使点了两次,Tomcat 容器也不一定能完全停掉,这时候很容易出现端口被占用的操作,这时候你需要打开系统的资源管理器,手动 kill 系统上所有的 java 进程。
# 输出 war 压缩包
如上图 Gif 所示,除了在 Artifacts 中需要配置,还需要在容器中也跟着配置,这样在启动容器的时候才会输出一个 war 压缩包。
通过配置,我们也知道 war 的压缩包本质是根据展开的 war 输出包进行压缩的得来。