配置pom.xml用maven打包java工程的方法(推荐)

这里是配置pom.xml用maven打包Java工程的方法的完整攻略:

1. 确认构建环境

在开始配置pom.xml之前,建议确认以下环境是否已安装:

  • JDK(Java Development Kit)
  • Maven

确认环境安装情况:

  • 打开终端或命令行
  • 输入命令java -version,确认能够输出Java的版本信息
  • 输入命令mvn -version,确认能够输出Maven的版本信息

如果您还没有安装或不确定是否安装,可以按照如下步骤操作:

安装JDK

  1. 前往Oracle官网下载安装JDK(需要注册会员账号)
  2. 安装并配置环境变量,将JDK的路径添加到系统环境变量PATH中

安装Maven

  1. 前往Maven官网下载最新版本的Maven
  2. 解压并配置环境变量,将Maven的路径添加到系统环境变量PATH中

2. 创建Java项目

在开始配置pom.xml之前,先创建一个Java项目。可以使用Java IDE(如Eclipse、IntelliJ IDEA)或使用文本编辑器手动创建。

这里以使用Eclipse为例,创建一个名为"HelloWorld"的Java项目,包含一个名为"Hello"的类,并且该类的main方法中输出"Hello World!"。

步骤

  1. 打开Eclipse
  2. 点击菜单File -> New -> Project
  3. 在选择面板中选择"Maven" -> "Maven Project",点击"Next"
  4. 在"New Maven Project"面板中,选择"Maven Archetype"为"maven-archetype-quickstart",点击"Next"
  5. 在"New Maven Project"面板中,填入项目的"Group Id"、"Artifact Id"、"Version"等信息,点击"Finish"
  6. 在项目上右键点击"src/main/java",选择"New" -> "Class"
  7. 在"New Java Class"对话框中,填入类名"Hello",点击"Finish"
  8. 在"Hello"类中编写代码,输出"Hello World!",如下:

java
public class Hello {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}

  1. 保存并运行该程序,输出"Hello World!"。

3. 配置pom.xml文件

在项目的根目录下,创建一个名为"pom.xml"的文件,并添加以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<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.example</groupId>
    <artifactId>HelloWorld</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>HelloWorld</name>
    <url>http://www.example.com</url>

    <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.12</version>
          <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>3.2.0</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <mainClass>com.example.Hello</mainClass>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

这里对pom.xml文件内容做一个简单的说明:

  • groupId:项目的组ID,约定俗成使用公司域名反转加项目名,如com.example.HelloWorld
  • artifactId:项目的名字,一般与groupId组合构成唯一标识符,如HelloWorld
  • version:项目的版本号,用法为major.minor.patch形式,如1.0.0
  • packaging:项目打包类型,这里为"jar",即可运行的Java包
  • name:项目的名称
  • url:项目的URL
  • dependencies:项目运行所依赖的库,这里包含了JUnit库,用于测试
  • build/plugins/plugin:定义一个名为"maven-jar-plugin"的插件,用来打包生成可运行的Java包,配置过程中包含:
  • archive/manifest/addClasspath:打包时添加Classpath
  • archive/manifest/mainClass:指定运行时的主类

4. 打包项目

打包项目可以在命令行中运行Maven命令,也可以使用Java IDE(如Eclipse、IntelliJ IDEA)提供的Maven插件打包。

这里以使用命令行的方式为例。在命令行中切换到项目的根目录下,运行如下命令:

mvn package

执行该命令之后,Maven会在项目的"target"目录下生成一个名为"HelloWorld-1.0-SNAPSHOT.jar"的可运行的Java包。

示例1

这里给出一个使用Servlet和JSP的Hello World示例,包含了HTTP请求响应的处理逻辑。

步骤

  1. 在项目上右键点击"src/main/java",选择"New" -> "Servlet"
  2. 在"New Servlet"对话框中,填入"HelloServlet"作为类名,也可以其他名称,点击"Next"
  3. 在"New Servlet"对话框中,选择"Suorce folder"为"src/main/java",选择"Package"为"com.example",点击"Next"
  4. 在"New Servlet"对话框中,将其映射到URL路径为"/hello",点击"Finish"
  5. 在src/main/webapp下创建index.jsp文件,并在该文件中编写如下代码:

```jsp



Hello World!





```

  1. 在"HelloServlet"类中编写代码,获取"index.jsp"页面提交的表单数据,并输出"Hello World!"和用户的名字,如下所示:

```java
package com.example;

import javax.servlet.;
import javax.servlet.http.
;
import java.io.*;

public class HelloServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("");
out.println("Hello World!");
out.println("");
out.println("

");
out.println("");
out.println("");
out.println("");
out.println("

");
out.println("");
}

   public void doPost(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {
       response.setContentType("text/html");
       PrintWriter out = response.getWriter();
       String name = request.getParameter("name");
       out.println("<html>");
       out.println("<head><title>Hello World!</title></head>");
       out.println("<body>");
       out.println("<h2>Hello " + name + "!</h2>");
       out.println("<p>Welcome to my website.</p>");
       out.println("</body></html>");
   }

}
```

  1. 执行"mvn package"命令,生成可运行的Java包
  2. 在命令行中运行以下命令,启动内置的Jetty服务器

shell
java -jar target/HelloWorld-1.0-SNAPSHOT.jar

  1. 在浏览器中访问"http://localhost:8080",可以看到"Hello World!"页面
  2. 在页面中输入名字并提交,可以看到页面输出"Hello 名字!"和"Welcome to my website."。

示例2

这里给出一个使用Spring框架的Hello World示例,包含了使用IoC容器注入对象的处理逻辑。

步骤

  1. 在项目的根目录下创建一个名为"src/main/resources"的目录,在该目录下创建一个名为"applicationContext.xml"的文件,并添加以下内容:

```xml

   <bean id="helloService" class="com.example.HelloService"/>


```

这里定义了一个名为"helloService"的Bean,它的实现类为"HelloService"。

  1. 在项目上右键点击"src/main/java",选择"New" -> "Class"
  2. 在"New Java Class"对话框中,填入"HelloService"作为类名,也可以其他名称,选择"Package"为"com.example",点击"Finish"
  3. 在"HelloService"类中编写代码,输出"Hello World!"和用户的名字,如下所示:

```java
package com.example;

public class HelloService {
public String sayHello(String name) {
return "Hello " + name + "!";
}
}
```

  1. 在项目上右键点击"src/main/java",选择"New" -> "Class"
  2. 在"New Java Class"对话框中,填入"HelloController"作为类名,也可以其他名称,选择"Package"为"com.example",点击"Finish"
  3. 在"HelloController"类中编写代码,通过IoC容器获取"HelloService"实例并调用其方法,输出"Hello World!"和用户的名字,如下所示:

```java
package com.example;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

@Controller
public class HelloController {
@Autowired
private HelloService helloService;

   @RequestMapping(value="/hello/{name}", method=RequestMethod.GET)
   @ResponseBody
   public String hello(@PathVariable("name") String name) {
       return helloService.sayHello(name);
   }

}
```

  1. 在pom.xml文件中添加如下依赖:

xml
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.3</version>
</dependency>

这里依赖了Spring框架的"spring-webmvc"模块,用于构建Web应用程序。

  1. 执行"mvn package"命令,生成可运行的Java包
  2. 在命令行中运行以下命令,启动内置的Jetty服务器

    shell
    java -jar target/HelloWorld-1.0-SNAPSHOT.jar

  3. 在浏览器中访问"http://localhost:8080/hello/yourname",可以看到页面输出"Hello yourname!"。其中"yourname"为任意用户名字。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:配置pom.xml用maven打包java工程的方法(推荐) - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • 解决BeanUtils.copyProperties不支持复制集合的问题

    当使用BeanUtils.copyProperties方法进行对象属性复制时,如果目标对象属性中存在集合类型,会出现无法复制集合中数据的问题。这个问题可以通过使用BeanUtils.copyProperties的另一个重载方法来解决,其中重载方法能够进行集合属性的复制。下面详细介绍解决这个问题的完整攻略。 核心思路 解决BeanUtils.copyPrope…

    Java 2023年5月20日
    00
  • SpringBoot2.0.3打印默认数据源为 HikariDataSource (null)问题

    下面是SpringBoot2.0.3打印默认数据源为HikariDataSource(null)问题的完整攻略。 问题描述 在使用SpringBoot2.0.3版本时,如果使用了默认的数据源,会在启动程序时输出类似于“SpringBoot2.0.3打印默认数据源为 HikariDataSource (null)”的提示信息,其中null在不同的操作系统和环境…

    Java 2023年5月20日
    00
  • java 中冒泡、二分、快速算法详解

    Java 中冒泡、二分、快速算法详解 冒泡排序 冒泡排序是一种简单的排序算法,通过不断交换相邻元素的值,把最大或最小的元素逐步“浮”到数列的顶端或底端。具体流程如下: 比较相邻的两个元素,如果前一个元素大于后一个元素,则交换这两个元素的位置。 对每一对相邻元素做同样的工作,从开始第一对到结尾最后一对。这样一轮排序过后,排在数列末尾的元素就是最大或最小的元素。…

    Java 2023年5月19日
    00
  • Java基础之创建虚拟机对象的过程详细总结

    首先我们需要了解Java创建虚拟机对象的过程。当使用new关键字创建一个对象的时候,Java虚拟机需要经过以下几个步骤: 1.检查是否已经加载该类,如果没有,则加载它。 2.检查该类是否继承自其它类或实现了接口,如果有,则需要先加载这些父类和接口。 3.为对象分配内存空间。 4.对内存空间进行必要的初始化。 5.调用对象的构造方法对对象进行初始化。 下面是两…

    Java 2023年5月26日
    00
  • 解决Jquery下拉框数据动态获取的问题

    当使用 jQuery 实现下拉框时,我们可能需要动态获取数据来填充下拉框选项。如果不处理好动态获取数据的方法,就会导致下拉框无法成功渲染出数据,或渲染出错误的数据。 以下是解决 Jquery 下拉框数据动态获取的问题的完整攻略,包含两个示例: 1. ajax方式获取数据 一种比较常见的方式是使用 ajax 请求来获取数据。我们可以使用 jQuery 的 $.…

    Java 2023年5月20日
    00
  • Java Web开发中过滤器和监听器使用详解

    Java Web开发中过滤器和监听器使用详解 概述 Java Web开发中的过滤器和监听器是用于处理Web请求和响应的框架,它们根据特定的需求对请求和响应进行预处理和后处理,从而实现Web应用的功能扩展以及业务处理。过滤器和监听器能够帮助我们实现诸如:事务管理、安全控制、请求和响应处理、统计性能等等的功能。 当我们需要在Web应用程序中加入某种公共的处理逻辑…

    Java 2023年6月15日
    00
  • 十五道tomcat面试题,为数不多的机会!

    下面我将分步骤介绍“十五道tomcat面试题,为数不多的机会!”的完整攻略。 一、了解Tomcat Tomcat是一个简单的、易于使用的Web服务器,也是一个Servlet容器。它是开源的,由Apache软件基金会维护。可以运行在Windows、Linux、Unix等多个平台上。 二、准备Tomcat面试题 为了确保你能顺利通过Tomcat的面试,你需要提前…

    Java 2023年5月19日
    00
  • 十一、JSP及语法概要

    JSP(JavaServer Pages)是一个让用户可以在HTML网页内嵌入Java代码的技术。JSP技术在Web应用开发中得到了广泛的应用。本文将详细讲解JSP的语法概要和特点。 JSP的特点 JSP是基于Java技术的,因此具有良好的跨平台性。 JSP技术允许在HTML文档中插入Java代码,大大方便了Web应用程序的开发。 JSP支持自定义标签库的开…

    Java 2023年6月15日
    00
合作推广
合作推广
分享本页
返回顶部