maven javaProject打包发布成服务
1,现在pom.xml中添加打包所需要的jar包。
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version> 1.7.1</version>
<configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.handlers</resource>
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.schemas</resource>
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.dsdl.server.Main</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
2,右击项目 选择-->run --->run configurations -->maven build ,右击maven build ---> New

选择Browse Workspace 选中要发布的javaproject
Goals: clean package
Maven Runtime :选中Maven的安装路径。
最后点击 Run,在项目的target文件夹下面会出现这些文件。其中标出的那个是需要拷到服务器上的。

3,拷到服务器上。放到磁盘的文件夹下。另外要写个批处理 reg.bat 和运行环境 javaService.exe。

reg 的内容:
@echo off rem 修改控制台颜色
color 1d rem * 使用JavaService将TestTimer安装为Windows服务的脚本
rem *
rem * JavaService - Windows NT Service Daemon for Java applications
rem * Copyright (C) 2006 Multiplan Consultants Ltd. LGPL Licensing applies
rem * Information about the JavaService software is available at the ObjectWeb
rem * web site. Refer to http://javaservice.objectweb.org for more details. rem 开始批处理文件中环境改动的本地化操作,在使用endlocal后环境将恢复到原先的内容
SETLOCAL rem 设置环境变量,指向当前路径
SET BASE_PATH=%CD%
rem 设置Java path: jre_home
SET JRE_HOME=C:\Program Files\Java\jre7
rem 判断JRE_HOME是否正确
if "%JRE_HOME%" == "" goto no_java
if not exist "%JRE_HOME%\bin\java.exe" goto no_java
rem 设置jvm内存分配情况
set JVM_MEMORY=-Xms256m -Xmx512m rem 设置jvmdll使用哪一种模式
SET jvmdll=%JRE_HOME%\bin\client\jvm.dll
if not exist "%jvmdll%" SET jvmdll=%JRE_HOME%\bin\server\jvm.dll
if not exist "%jvmdll%" goto no_java rem 设置JavaService路径
set JSBINDIR=E:\project
set JSEXE=%JSBINDIR%\JavaService.exe rem 判断jar是否正确
SET acctjar=%BASE_PATH%\UDPServer-0.0.1-SNAPSHOT.jar
if not exist "%acctjar%" goto no_peer @echo . Using following version of JavaService executable:
@echo .
"%JSEXE%" -version
@echo . rem parameters and files seem ok, go ahead with the service installation
@echo . %BASE_PATH% +++++++++++++++++++ rem 处理该批处理的输入参数,后台服务启动模式:自动
SET svcmode=
if "%1" == "-manual" SET svcmode=-manual
if "%1" == "-auto" SET svcmode=-auto rem 设置JAVA_OPTS
set JAVA_OPTS=%JAVA_OPTS% -Djava.class.path="%BASE_PATH%\UDPServer-0.0.1-SNAPSHOT.jar"
set JAVA_OPTS=%JAVA_OPTS% %JVM_MEMORY% rem 设置startstop
SET START_STOP=-start com.dsdl.server.Main rem 设置Log文件路径
set OUT_ERR=-out "%BASE_PATH%\service_out.log" -err "%BASE_PATH%\service_err.log" rem 设置desp
set DESP=-description "UdpServer Service" rem 设置执行命令行
set runcmd="%JSEXE%" -install UDPSERVER
set runcmd=%runcmd% "%jvmdll%"
set runcmd=%runcmd% %JAVA_OPTS%
set runcmd=%runcmd% %START_STOP%
set runcmd=%runcmd% %OUT_ERR%
set runcmd=%runcmd% -current
set runcmd=%runcmd% "%BASE_PATH%"
set runcmd=%runcmd% %svcmode%
set runcmd=%runcmd% -overwrite
set runcmd=%runcmd% -startup 6
set runcmd=%runcmd% %DESP%
echo %runcmd% rem 执行安装命令
%runcmd% rem 启动服务
net start UDPSERVER
if ERRORLEVEL 1 goto js_error goto end :no_java
@echo . No java Evn
goto error_exit :no_peer
@echo . jar is not exist
goto error_exit :no_jsexe
@echo . JavaService.exe is not exist
goto error_exit :js_error
@echo . UDPSERVER error
goto error_exit :error_exit @echo .
@echo . install fail,can not make UDPServer-0.0.1-SNAPSHOT install for Windows Service
@echo .
@echo . mingling geshi:
@echo .
@echo . %~n0 [-auto / -manual] [-np]
@echo .
@echo . qizhong:
@echo . -auto (默认) or -manual 参数说明了服务的启动模式:自动或者手动
@echo . -np 批处理命令执行完毕后不暂停
@echo .
@echo . 比如:
@echo . %~n0 -auto -np :end
ENDLOCAL
@echo .
if "%2" NEQ "-np" @pause
4,最后双击 reg.bat 即可。
提示:必须有权限的登录账号才注册服务。开始我自己的账号,怎么试都不行,后来改成administrator账号,才成功。
maven javaProject打包发布成服务的更多相关文章
- maven项目打包发布到私有仓库
在项目开发中通常会引用其他的jar,怎样把自己的项目做为一个jar包的形式发布到私服仓库中,主要有以下三个步骤 (怎样配置maven私服仓库,就不再这里说明了,可以参考以前的文章)1.在maven的s ...
- Maven 项目打包发布
在Eclipse左侧右击项目,Debug As -> Debug Configurations -> 双击Maven Build 然后看弹出框的右侧右侧的Name随便填写一个名字,Base ...
- docker-compose 完整打包发布, 多服务,多节点SPRING CLOUD ,EUREKA 集群
这里不再使用 端口映射的方式,因为不同主机上,Feign 根据 docker hostname访问会有问题. 把打包的好jar copy到docker镜像里 有几个服务,就复制几个dockerfile ...
- windows bat发布成服务
删除服务 删除名为"WINDOWS MANAGEMONT INSTALLER"的系统服务 sc delete "windows managemont Installer& ...
- maven项目打包发布时跳过测试
mvn命令: mvn clean install -Dmaven.test.skip=true eclipse build... 命令: clean install -Dmaven.test.skip ...
- 使用Ant 和 Maven打包发布命令行程序(转载)
From:https://www.linux178.com/Java/maven-release.html 用Java写了一个命令行的小程序,使用的Intellij IDE是IDEA13原来一直使用A ...
- JFX11+IDEA跨平台打包发布的完美解决办法
1 概述 IDEA2020.1的文档中提到只有JFX8的工程才支持打成jar包,并且,如果直接使用Build Artifacts的话,会如下提示: IDEA文档有提到这个的解决办法,是使用一些第三方工 ...
- geoserver发布地图服务WMS
wms服务发布: 1.打开geoserver管理首页(网址为http://localhost:8080/geoserver/web/),并使用安装时设置的帐户名和密码登录(这里是admin/geose ...
- Expo大作战(十八)--expo如何发布成独立应用程序,打包成apk或者ipa,发布到对应应用商店
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
随机推荐
- 注解@Override
Android的开发者对@Override肯定是非常熟悉,不管是自己的代码中还是书上都会出现,但是他是什么意思呢?如下: @Override是伪代码,表示重写(当然不写也可以),不过写上有如下好处: ...
- 对TextVIew中特定字符串设定onTouchEvent方法
上面是Iphone备忘录的图,笔者之前接到一个需求是实现点击文本框里的数字,弹出一个类似上图的按钮,显示出复制,要求是这个按钮的位置必须是根据你点击的位置进行定位(为什么这么说,是因为我们不可能把按钮 ...
- python之pypinyin
python 汉字拼音库 pypinyin 这个库还是很好用的,这个库还是很简单的,中文注解,下面是源码,看注释就可以大致明白方法的意思 #!/usr/bin/env python # -*- cod ...
- 【第二次个人作业】结对作业Core第一组:四则运算生成PB16061082+PB16120517
[整体概况] 1.描述最终的代码的实现思路以及关键代码. 2.结对作业两个人配合的过程和两个人分工. 3.API接口文档和两个组的对接. 4.效能分析,优化分析和心得体会. [代码实现] 一. 实现功 ...
- mysql的sql筛选排重最大值并修改其属性
修改属性 mysql -h192.168.1.51 -uroot -e "use codex_game_s1051_h; update user_info set isActive=0 wh ...
- boost asio acceptor 构造
boost::asio::io_service io_svc; boost::asio::ip::address_v4 lis_ip; // 默认监听本机所有IP boost::asio::ip::t ...
- 在VSCode中使用Markdown
前言 最近在学习使用Markdown语法,尝试使用了"MarkdownEditor"."Sublime Text3"."VSCode"这三种 ...
- 了解linux web的监听工具
zabbix cacti Nagios 本想安装的,但是安装需要一个 空的服务器,因为服务器已经有安装 LAMP,故没有去了解 尝试了 cacti ,因为本地环境版本问题,只能使用0.8.8a版本,并 ...
- 初始化css样式
html,body,div,ul,li,ol,a,input,textarea,p,dl,dt,dd{margin:0;padding:0;} ul li{list-style: none;} a{t ...
- CSS——背景及应用
CSS 可以添加背景颜色和背景图片,以及进行图片设置. none : 无背景图(默认的) url : 使用绝对或相对地址指定背景图像 background-image 属性允许指定一个图片展示在背景中 ...