配置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日

相关文章

  • Java编程发展历史(动力节点Java学院整理)

    Java编程发展历史 Java前身 Java语言是由Sun Microsystems公司(后被Oracle公司收购)于1995年推出的一门计算机编程语言。起初,该语言被称为Oak语言,因为Oak是Sun Microsystems的办公室门外长了一棵橡树,而这个项目在设计之初的代号就是Oak。 Java语言推出 后来,强调语言应该与因特网紧密结合,适应网络环境…

    Java 2023年5月20日
    00
  • 什么是本地方法栈?

    本地方法栈(Native Method Stack)是一种用于存储本地方法的内存区域。本地方法是指本地语言(如 C 或 C++)编写方法,可以通过 Java Native Interface(JNI)调用。本地方法栈是线程私有的其大小可以通过 -Xss进行设置。 使用本地栈,需要注意以下几点: 在程序开发中需要合理使用存,避免出现栈溢出等问题。 在使用 JN…

    Java 2023年5月12日
    00
  • Springboot单体架构http请求转换https请求来支持微信小程序调用接口

    让我们来详细讲解“Springboot单体架构http请求转换https请求来支持微信小程序调用接口”的攻略。 背景介绍 微信小程序在与后端交互时,要求所有的接口都必须使用HTTPS协议,而SpringBoot单体架构默认是使用HTTP协议的。所以,我们需要将HTTP请求转换为HTTPS请求,来支持微信小程序调用接口。 实现过程 以下是实现过程的详细步骤: …

    Java 2023年5月23日
    00
  • Spring框架核心概念小结

    下面是Spring框架核心概念的完整攻略: Spring框架核心概念小结 1. IoC容器 IoC全称Inversion of Control,中文名为控制反转。在Spring框架中,IoC容器负责管理Java对象的创建和销毁,并且通过依赖注入的方式将对象之间的依赖关系交给容器来管理。Spring框架的IoC容器实现了Bean的管理,也就是管理对象实例,并提…

    Java 2023年5月19日
    00
  • Spring Boot在开发过程中常用IDEA插件

    当我们使用Spring Boot进行开发时,经常会借助于IDEA进行项目的创建、开发、调试和部署等工作。IDEA插件可以为我们提供更加便捷的开发体验,下面我们来一一介绍一些常用的Spring Boot插件。 1. Spring Assistant Spring Assistant 插件可以帮助我们分析并且优化项目的依赖,进而可以提高项目的启动速度和运行效率。…

    Java 2023年5月19日
    00
  • Spring Security配置保姆级教程

    我来详细讲解一下“Spring Security配置保姆级教程”的完整攻略。 1. Spring Security的概念和作用 Spring Security是Spring生态圈中的一个重要组件,能够为我们的Web应用提供安全认证、授权、攻击防护等功能。通过Spring Security,我们能够轻松实现对Web资源、接口、方法的权限控制,同时防范常见的We…

    Java 2023年6月3日
    00
  • hotspot解析jdk1.8 Unsafe类park和unpark方法使用

    Hotspot解析JDK1.8 Unsafe类park和unpark方法使用 介绍 在JDK1.8版本中,Java的Unsafe类提供了一个名为park的方法,它可以阻塞线程并等待后续被其他线程unpark唤醒。本文将详细阐述Unsafe类的park和unpark方法的原理和使用方法。 原理 Unsafe类的park方法可以使当前线程在等待队列中阻塞。当其他…

    Java 2023年5月19日
    00
  • Spring配置动态数据源实现读写分离的方法

    下面是Spring配置动态数据源实现读写分离的方法的完整攻略。 什么是动态数据源? 动态数据源是指可以在应用程序运行时动态地切换不同的数据源,以便满足应用程序的需求。在实际应用程序中,常见的用途是实现数据库读写分离,将读操作分配到只读数据库,将写操作分配到主数据库。 实现步骤 引入依赖 在 pom.xml 中添加以下依赖: <dependency&gt…

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