您的位置:首页 > 编程语言 > Java开发

搭建IntelliJ IDEA+maven+jetty+SpringMVC 开发环境(一)

2017-01-23 16:47 881 查看
2017一月
16

转载自 http://blog.csdn.net/jdjdndhj/article/details/54572439


搭建IntelliJ IDEA+maven+jetty+SpringMVC 开发环境(一)

分类:web开发技术框架学习笔记
(26)(0)举报收藏

以前一直使用的是eclipse,偶尔使用myeclipse,现在由于工作需要,正在使用idea。因为也是刚接触这个开发工具,处于摸索阶段,趁着学习写了一篇环境搭建博客,与大家一起分享一下。

一、新建项目

1、打开idea工具,选择新建项目file-> new -> project。选择maven,选择项目jdk的版本,我这里使用的是1.8(截图是1.7),在右边的选择框勾选create from archetype,并选择相应的选项,如下图,选择好后next:



2、这里需要填写GroupId和ArtifactId还有Version,这三个属性目的是标识你的项目的唯一性,比如Jetty的GroupId是org.eclipse.jetty,即它是eclipse组织的项目,ArtifactId是jetty-server,项目名为jetty-server,而我当前使用的Version是9.4.0.v20161208。这些只在发布时有用,在此可以随便填写,填好后点Next:



3、 打开Maven home directory,可以发现IntelliJ IDEA已经集成了Maven 2和Maven 3两个版本,也会显示本地的maven版本,这里我们选择自己安装的maven版本,点击Next。



4、填写项目名称以及项目保存路径,点finish完成项目创建。



5、finish后,maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定,经验发现用较新版本的maven项目生成更快,使用IDEA集成的maven可能会等待很长一段实践。

下图就是一个项目的初始架构(正在初始化中),红框1是项目的文件架构,因为正在初始化所以文件架构还不完整;红框2是控制台,根据显示的信息可以知道此时正在创建maven项目;红框3是一个maven编译选项,选择Enable-Auto-Import的话之后每次修改maven的配置文件pop.xml项目都会自动导入jar包(不会再次询问),有些同学可能选了这项之后以后可能会出现项目比较卡顿的情况,所以现在暂时先建议选择第一个,导入更改项,这个就是每次修改完pop.xml文件项目会询问是否导入jar包。只要修改了pop.xml文件就会出现这个提示,所以这里可以随便选一个。



maven项目生成完毕后,整个的项目架构如下图。稍微了解一点web项目的同学就会知道每个文件夹的作用啦,在这我就不做讲解。



此时可能有同学会有疑问了,怎么和以前的项目不一样呀,没有Java这个文件夹了。是的,现在是没有存放Java源代码的文件夹,所以我们需要手动创建一个:

按ctrl+alt+shift+s,或者File->Project Structure查看一下项目结构,检查是否设置正确。



确认没问题后选择modules,在main文件夹上右键选择新建文件夹,命名为Java(这个命名随意)



现在创建的Java文件还只是一个普通的文件夹,需要把他设置成源文件夹,选中Java文件夹,再选择上方的source即可,设置完毕后右边的项目架构也会随着改变



至此,一个web应用的初始化工作以及完成!

二、Maven自动导入jar包

基于maven管理的项目现在我们已经创建完毕,现在需要通过maven导入项目所需的jar包。Maven的好处在于我们不需要再去网络上一个一个找jar包,只需要把需要用的jar包名称以及版本号在配置中标注,Maven就会自动从他的jar包仓库中下载,相关的配置在里面也有demo,只要把对应jar包的demo复制到项目的pop.xml中就可以了。

项目配置代码如下:

[html]
view plain
copy

print?





<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  
  <modelVersion>4.0.0</modelVersion>  
  <groupId>com.promonkey</groupId>  
  <artifactId>springmvcdemo</artifactId>  
  <packaging>war</packaging>  
  <version>1.0-SNAPSHOT</version>  
  <name>springmvcdemo Maven Webapp</name>  
  <url>http://maven.apache.org</url>  
  
  <!--设定jar包版本-->  
  <properties>  
    <spring.version>4.3.2.RELEASE</spring.version>  
    <mybatis.version>3.3.0</mybatis.version>  
  </properties>  
  
  <dependencies>  
    <!--单元测试jar包-->  
    <dependency>  
      <groupId>junit</groupId>  
      <artifactId>junit</artifactId>  
      <version>3.8.1</version>  
      <scope>test</scope>  
    </dependency>  
  
  <!--springMVC需要的jar包-->  
      <dependency>  
          <groupId>org.springframework</groupId>  
          <artifactId>spring-context</artifactId>  
          <version>${spring.version}</version>  
      </dependency>  
  
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->  
    <dependency>  
      <groupId>org.springframework</groupId>  
      <artifactId>spring-webmvc</artifactId>  
      <version>${spring.version}</version>  
    </dependency>  
  
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->  
    <dependency>  
      <groupId>org.springframework</groupId>  
      <artifactId>spring-web</artifactId>  
      <version>${spring.version}</version>  
    </dependency>  
  
    <!--mybatis所需jar包-->  
  <dependency>  
    <groupId>org.mybatis</groupId>  
    <artifactId>mybatis</artifactId>  
    <version>${mybatis.version}</version>  
  </dependency>  
  
  
  <!--数据库jar包-->  
  <dependency>  
    <groupId>mysql</groupId>  
    <artifactId>mysql-connector-java</artifactId>  
    <version>5.1.38</version>  
  </dependency>  
  
  </dependencies>  
  
  <build>  
    <finalName>springmvcdemo</finalName>  
      <plugins>  
          <plugin>  
              <groupId>org.apache.maven.plugins</groupId>  
              <artifactId>maven-compiler-plugin</artifactId>  
              <configuration>  
                  <source>1.8</source>  
                  <target>1.8</target>  
              </configuration>  
          </plugin>  
  
        <!--jetty插件-->  
        <plugin>  
          <groupId>org.mortbay.jetty</groupId>  
          <artifactId>maven-jetty-plugin</artifactId>  
          <configuration>  
            <stopPort>9988</stopPort>  
            <stopKey>foo</stopKey>  
            <scanIntervalSeconds>5</scanIntervalSeconds>  
            <connectors>  
              <!--<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">-->  
              <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">  
                <port>8088</port>  
                <maxIdleTime>60000</maxIdleTime>  
              </connector>  
            </connectors>  
            <webAppConfig>  
              <contextPath>/</contextPath>  
              <defaultsDescriptor></defaultsDescriptor>  
            </webAppConfig>  
          </configuration>  
        </plugin>  
  
      </plugins>  
  </build>  
  
</project>  



<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion>
<groupId>com.promonkey</groupId>
<artifactId>springmvcdemo</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>springmvcdemo Maven Webapp</name>
<url>http://maven.apache.org</url>

<!--设定jar包版本-->
<properties>
<spring.version>4.3.2.RELEASE</spring.version>
<mybatis.version>3.3.0</mybatis.version>
</properties>

<dependencies>
<!--单元测试jar包-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>

<!--springMVC需要的jar包-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>

<!--mybatis所需jar包-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis.version}</version>
</dependency>

<!--数据库jar包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>

</dependencies>

<build>
<finalName>springmvcdemo</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>

<!--jetty插件-->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<configuration>
<stopPort>9988</stopPort>
<stopKey>foo</stopKey>
<scanIntervalSeconds>5</scanIntervalSeconds>
<connectors>
<!--<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">-->
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>8088</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
</connectors>
<webAppConfig>
<contextPath>/</contextPath>
<defaultsDescriptor></defaultsDescriptor>
</webAppConfig>
</configuration>
</plugin>

</plugins>
</build>

</project>

配置完成后,左下角会弹出一个信息,是否导入pop.xml更改项;如果没有弹出,也可以点击右边的maven更新,这样maven就会导入jar包:



jar包导入完成后,在左边的文件架构中可以查看:



至此,项目所需的jar包也就全部导入进来了。此时可以检查一下右边的项目架构中,插件(Plugins)中是否有jetty插件,如果有则可以使用jetty。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: