很多人使用idea构建web项目的时候在烦恼,为什么我的破idea找不到Web Appplication,找不到Web Appplication就新建不了tomcat。
其实我们在下载的时候没有分清楚idea是有两种版本的,一个是社区版,一个是旗舰版(要钱的)。旗舰版的功能很齐全,但是社区版的很多东西需要自己集成。
通常来说,如果一个项目用到了maven,那么就先建立项目再转换成maven(点击项目,在new下面的选项add XXX,忘记了)。如果你非要先用maven来构建项目,并且使用maven提供的层级结构(archetype),那么步骤如下:
由于IDEA社区版(Community)无法直接New一个Web Appplication 所以要使用maven来创建
1.创建一个Project
2.
3.
4.这里在Properties中添加一个参数archetypeCatalog=internal,不加这个参数,在maven生成骨架的时候将会非常慢,有时候会直接卡住。
来自网上的解释:
archetypeCatalog表示插件使用的archetype元数据,不加这个参数时默认为remote,local,即*仓库archetype元数据,由于*仓库的archetype太多了,所以导致很慢,指定internal来表示仅使用内部元数据。
5.
6.配置Tomcat
7.点击左上角的加号,选择Maven
8.
9.先在pom.xml中加入tomcat7的插件(注意我在其中的port标签里设置了端口号是9090)
[html] view plain copy
<build>
<finalName>TestArtif</finalName>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
<port>9090</port>
<path>/</path>
<uriEncoding>UTF-8</uriEncoding>
<server>tomcat7</server>
</configuration>
</plugin>
</plugins>
</build>
然后点击右上角的绿色三角形箭头,等待tomcat启动,可以在下方看到tomcat的启动信息。(如果是第一次启动,可能要等待从Maven仓库下载插件)
就会再控制台中看到如下信息:
八月 04, 2016 3:08:30 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["http-bio-8080"]
八月 04, 2016 3:08:30 下午 org.apache.catalina.core.StandardService startInternal
信息: Starting service Tomcat
八月 04, 2016 3:08:30 下午 org.apache.catalina.core.StandardEngine startInternal
信息: Starting Servlet Engine: Apache Tomcat/7.0.37
八月 04, 2016 3:08:32 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-bio-8080"]
10.tomcat启动成功后,在浏览器输入localhost:9090
(ps:以上项目构建完之后,你会发现你新建不了java class或者包,这时候java文件可以用file代替,但是没有任何的办法可以新建包,这时候的你会gg),所以最好的办法还是新建一个基本的项目,然后自己需要什么就创建怎样的目录结构,然后绑定tomcat部分不变。