idea工具maven projects里面有9种生命周期,生命周期是包含在一个项目构建中的一系列有序的阶段。

一、最常用的两种打包方法:
  1.clean,package(如果报错,很可能就是jar依赖的问题)
  2.clean,install

二、9种生命周期:
  1.clean,清理,在进行真正的构建之前进行一些清理工作,移除所有上一次构建生成的文件。执行该命令会删除项目路径下的target文件,但是不会删除本地的maven仓库已经生成的jar文件。
  2.validate,验证,验证工程是否正确,所需的信息是否完整。
  3.compile,编译源码,编译生成class文件,编译命令,只编译选定的目标,不管之前是否已经编译过,会在你的项目路径下生成一个target目录,在该目录中包含一个classes文件夹,里面全是生成的class文件及字节码文件。
  4.test,单元测试,测试。
  5.package,打包,将工程文件打包为指定的格式,例如JAR,WAR等。这个命令会在你的项目路径下一个target目录,并且拥有compile命令的功能进行编译,同时会在target目录下生成项目的jar/war文件。如果a项目依赖于b项目,打包b项目时,只会打包到b项目下target下,编译a项目时就会报错,因为找不到所依赖的b项目,说明a项目在本地仓库是没有找到它所依赖的b项目,这时就用到install命令了
  6.verify,核实,检查package是否有效、符合标准。
  7.install,安装至本地仓库,将包安装至本地仓库,以让其它项目依赖。该命令包含了package命令功能,不但会在项目路径下生成class文件和jar包,同时会在你的本地maven仓库生成jar文件,供其他项目使用(如果没有设置过maven本地仓库,一般在用户/.m2目录下。如果a项目依赖于b项目,那么install b项目时,会在本地仓库同时生成pom文件和jar文件,解决了上面打包package出错的问题)
  8.build:功能类似compile,只是只对整个项目进行编译。
  9.site,站点,生成项目的站点文档
  10.deploy,复制到远程仓库

三、build和compile的区别
  1.Compile:只编译选定的目标,不管之前是否已经编译过。
  2,Build:是对整个工程进行彻底的重新编译,而不管是否已经编译过。Build过程往往会生成发布包,这个具体要看对IDE的配置了,Build在实际中应用很少,因为开发时候基本上不用,发布生产时候一般都用ANT等工具来发布。Build因为要全部编译,还要执行打包等额外工 作,因此时间较长。

IDEA打成jar包并在windows后台运行

(1)方法一

一、IDEA打成jar包

1、File=>Project Structure=>Project


选择windows中安装的java版本,idea默认使用自己的java环境,需要改为windows中安装的版本,不然后期jar包在windows中运行时会java版本不对的错误。

2、File=>Project Structure=>Artifacts

接着选择main方法

选择完之后出现以下界面,点击“OK”

3、返回idea的编辑界面后,Build=>Build Artifacts


接着选择build

(2)方法二:

找到主方法的入口,然后执行clean,package

二、在windows后台运行jar包

快速进入到目录下:

按住shift键,然后鼠标右键出现在此处打开Powershell窗口

在cmd中可以使用java -jar xxxxx.jar方式运行一个jar文件,这种方法运行一旦关闭该cmd界面就会停止运行。编辑.bat文件,使用javaw方式运行不用担心文件会在不小心关闭运行界面时停止运行程序。
1、在jar文件的同级目录下面编写两个.bat文件,分别是“启动.bat”和“停止.bat”。
2、启动.bat的内容为:

@echo off

title 准备启动设备驱动...................

color 3E

start javaw   -jar -Dloader.path=.,resources,lib siccQh01.jar 

echo .
echo ------------ 启动成功 --------------
echo .
echo ------------ 启动成功 --------------
echo .
echo ------------ 启动成功 --------------
echo .
echo ------------ 启动成功 --------------
echo . timeout /t 2 exit

执行该bat文件会在windows后台运行siccQh01.jar,2秒之后自动关闭

3、停止.bat的内容为:

@echo off

title 停止设备驱动

color 3E

taskkill -f -t -im javaw.exe

echo .
echo ------------停止成功!--------------------
echo .
echo ------------停止成功!--------------------
echo .
echo ------------停止成功!--------------------
echo .
echo ------------停止成功!--------------------
echo . timeout /t 2 exit

执行后会结束javaw所有进程。

出现问题:

spring boot 运行 jar 或 war 提示没有主清单属性解决

idea中如何的更多相关文章

  1. Python开源框架

    info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...

  2. mapreduce中一个map多个输入路径

    package duogemap; import java.io.IOException; import java.util.ArrayList; import java.util.List; imp ...

  3. Hadoop 中利用 mapreduce 读写 mysql 数据

    Hadoop 中利用 mapreduce 读写 mysql 数据   有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...

  4. Python中的多进程与多线程(一)

    一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...

  5. .NET Core中的认证管理解析

    .NET Core中的认证管理解析 0x00 问题来源 在新建.NET Core的Web项目时选择“使用个人用户账户”就可以创建一个带有用户和权限管理的项目,已经准备好了用户注册.登录等很多页面,也可 ...

  6. Angular杂谈系列1-如何在Angular2中使用jQuery及其插件

    jQuery,让我们对dom的操作更加便捷.由于其易用性和可扩展性,jQuer也迅速风靡全球,各种插件也是目不暇接. 我相信很多人并不能直接远离jQuery去做前端,因为它太好用了,我们以前做的东西大 ...

  7. 关于CryptoJS中md5加密以及aes加密的随笔

    最近项目中用到了各种加密,其中就包括从没有接触过得aes加密,因此从网上各种查,官方的一种说法: 高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学 ...

  8. In-Memory:在内存中创建临时表和表变量

    在Disk-Base数据库中,由于临时表和表变量的数据存储在tempdb中,如果系统频繁地创建和更新临时表和表变量,大量的IO操作集中在tempdb中,tempdb很可能成为系统性能的瓶颈.在SQL ...

  9. SQL Server中的高可用性(2)----文件与文件组

        在谈到SQL Server的高可用性之前,我们首先要谈一谈单实例的高可用性.在单实例的高可用性中,不可忽略的就是文件和文件组的高可用性.SQL Server允许在某些文件损坏或离线的情况下,允 ...

  10. 【.net 深呼吸】序列化中的“引用保留”

    假设 K 类中有两个属性/字段的类型相同,并且它们引用的是同一个对象实例,在序列化的默认处理中,会为每个引用单独生成数据. 看看下面两个类. [DataContract] public class 帅 ...

随机推荐

  1. 【转】Vue项目报错:Uncaught SyntaxError: Unexpected token <

    这篇文章主要介绍了Vue项目报错:Uncaught SyntaxError: Unexpected token <,在引入第三方依赖的 JS 文件时,遇到的一个问题,小编觉得挺不错的,现在分享给 ...

  2. 单词CAEMENT水泥CAEMENT英文

    caement Archaic spelling of cement. caement Alternative forms caement (archaic) c?ment (archaic) Hyp ...

  3. spring boot 的request.getServletContext().getRealPath路径获取问题

    默认情况下springboot中request.getServletContext().getRealPath 返回的是一个临时文件夹的地址 通过查看源代码 位置在 org.springframewo ...

  4. kbmmw 5.10.00 发布

    We are happy to announce v5.10.00 of the most complete development add on for Delphi and C++Builder ...

  5. 【JMeter】压力测试工具的概览与使用

    软件工程综合实践第五次个人作业 作业要求:在软件测试章节中,我们介绍了不少VSTS的软件测试工具,请使用一些其他平台上的测试工具,并写博客介绍如何在你的项目中具体使用. 前言:   第一次看到这个作业 ...

  6. H3C 什么是漫游

  7. uboot是什么

    u-boot是一种普遍用于嵌入式系统中的Bootloader,Bootloader是在操作系统运行之前执行的一小段程序,通过它,我们可以初始化硬件设备.建立内存空间的映射表,从而建立适当的软硬件环境, ...

  8. 调试用Chrome浏览器

    今天写HTML页面调试时出了问题:一个页面在本地的工作空间文件夹内可以打得开,在HBuilder里用Edge打不开. 我还以为是工作空间路径出问题了,重建了好几次空间和项目.. 询问了小页,他建议以后 ...

  9. Xorequ(BZOJ3329+数位DP+斐波那契数列)

    题目链接 传送门 思路 由\(a\bigoplus b=c\rightarrow a=c\bigoplus b\)得原式可化为\(x\bigoplus 2x=3x\). 又异或是不进位加法,且\(2x ...

  10. DT添加七牛云对象存储插件功能

    七牛云对象存储  1.注意客户购买的空间的存储区域,区域不同对应的上传域名不同    destoon  七牛云上传文件   用下面源码替换include/ftp.class.php   文件代码 &l ...