如何在idea里自动部署maven生成的ear文件到glassfish

如何在idea里自动部署maven生成的ear文件到glassfish,第1张

一个基本的glassfish的配置如下:

<plugin>

<groupId>orgglassfishmavenplugin</groupId>

<artifactId>maven-glassfish-plugin</artifactId>

<version>22-SNAPSHOT</version>

<configuration>

<glassfishDirectory>${glassfishhome}</glassfishDirectory>

<user>${domainusername}</user>

<!-- <adminPassword>admin</adminPassword> -->

<passwordFile>${glassfishhome}/domains/domain1/master-password</passwordFile>

<debug>true</debug>

<echo>true</echo>

<domain>

<name>domain1</name>

<adminPort>4848</adminPort>

</domain>

<components>

<component>

<name>${projectartifactId}</name>

<artifact>${projectbuilddirectory}/${projectbuildfinalName}war</artifact>

</component>

</components>

</configuration>

</plugin>

使用glassfish必须要求自定义<glassfishDirectory>,<user><passwordFile>或者<adminPassword>,<domain><components><debug><echo>这几个标签,对于这几个标签解释如下:

<configuration>:定义

<glassfishDirectory>:glassfish_home的目录,可以通过在settingsxml profiles中设置或者在这里指定

<user>:用户名,glassfish安装后会自动新建了一个域,domain1,用户名默认是admin,也可以通过settingsxml profiles中设置或者在这里指定

<adminPassword>:用户名密码,这个跟<passwordFile>是互相冲突的,两者只能选1,使用这个标签则要明文输入管理员登录密码,而且在glassfish启动的时候会自动生成一个tmp的文件进行读取

<passwordFile>:密码文件,指定新建域的密码文件存放位置,以domain1来说密码位置上存在domain1的根目录下的master-password

<debug>:是否使用debug模式启动glassfish,使用debug模式启动可以查看中间使用的[Info]信息,可以跟echo一起使用

<echo>:是否以echo模式启动glassfish,使用echo模式启动则直接运行,除了最后出错信息跟一些必要的[Info]信息之外其余都不显示包括中间运行错误的信息

<domain>:域

<name>:域名,指定当前项目使用那个域启动,这个域是跟<user>,<passwordFile>的内容对应的

<adminPort>:控制台端口,一般是4848

<components>:组件,生成目录:

<component>组件

<name>:组件名称,一般默认使用project的artifactId,也就是project的文件名

<artifact>:生成指定文件的目录与文件类型,对于webapp的话则是webapp

本文主要记录Jenkins+Rancher+k8s自动化部署相关配置说明,不涉及rancher和jenkins安装部署,包含java server项目、WAR项目、前端VUE项目部署配置介绍。

服务器环境信息:

需要在安装jenkins服务上部署下面相应的软件,请注意软件版本,如已经安装相关软件,可跳过此章节。

需要安装rancher-cli,并且使用jenkins用户预先登录rancher平台:命令参考:

--token:这个用户的token建议设置为永不过期,在rancher管理端 -> api&key > 添加。

建议安装阿里镜像,提高编译速度:

jenkins启动用户需要添加到docker组中:

项目主要是java和vue开发的,所以需要安装Maven Integration plugin插件。

spring boot或者spring cloud自带容器,以及其它服务类型的java后端应用部署。

1、填写项目名称,选择"构建一个maven项目"

点击下面"OK"按钮

2、填写项目描述信息

3、输入项目地址,并选择用户凭证

本文通过condingnet作为代码管理平台,点击"Add"添加自己账号凭证(输入codingnet平台登陆账号密码即可)。

4、配置maven编译脚本

5、编写rancher部署脚本

Dockerfile参数说明:FROM:选择基础镜像包,该项目是用java语言开发需要jdk18所以选择openjdk:8ADD:将bRule-deploy-100targz文件解压并上传到镜像的brule目录EXPOSE:容器内部启动2002端口,根据自身项目填写指定端口,多个端口填写多行EXPOSE标签ENTRYPOINT:容器启动时执行的命令,执行多条命令使用&&拼接,命令行中带&需要加上转移符\&,使用tail -fn监听应用日志,以便容器日志查看。

用于创建docker镜像,就好比创建一个已经安装并且配置好了应用程序的操作系统镜像。

参数说明:19216810021:5000:为本地docker镜像服务器地址brule:latest:应用名称,根据自身项目名称修改

利用上面创建好的操作系统镜像启动一个vmware虚拟机,创建k8s容器。

参数说明:brule:应用名称,根据自身项目名称修改,应用名称规范()image:刚才创建的docker镜像containerPort:容器启动端口,多个端口使用多行containerPort标签声明,端口限制在30000-32000

前面vmware虚拟机创建好后,怎么能让别人访问?这个时候就需要创建一个网络服务,用于打通路由器与vmware本地虚拟机的网络。

参数说明:brule:应用名称,根据自身项目名称修改port:容器启动端口nodePort:对外提供服务端口,外部机器访问

将上面配置好的shell脚本复制到Post Steps -> 执行shell文本域中,并点击"保存" -> "立即构建"即可部署。

1、进入刚才创建好的jenkins任务,点击立即构建

2、点击左下角构建任务,选择"Console Output",查看构建日志

3、登录rancher管理平台,查看构建好的应用

基于J2EE项目的war包部署,前面操作都一致,只是shell部署脚本稍有不同,这里主要详细说明rancher部署脚本。

Dockerfile参数说明:FROM:选择基础镜像包,war统一使用tomcat容器部署,tomcat:85-jre8-slimADD:将operationwar文件解压并上传到镜像的/usr/local/tomcat/webapps/目录EXPOSE:容器内部启动8080端口,根据自身项目填写指定端口,多个端口填写多行EXPOSE标签

这里不需要配置ENTRYPOINT标签,因为tomcat镜像包中已经有了。

用于创建docker镜像,就好比创建一个已经安装并且配置好了应用程序的操作系统镜像。

参数说明:19216810021:5000:为本地docker镜像服务器地址operation:latest:应用名称,根据自身项目名称修改

利用上面创建好的操作系统镜像启动一个vmware虚拟机,创建k8s容器。

参数说明:operation:应用名称,根据自身项目名称修改image:刚才创建的docker镜像containerPort:容器启动端口,多个端口使用多行containerPort标签声明,端口限制在30000-32000

前面vmware虚拟机创建好后,怎么能让别人访问?这个时候就需要创建一个网络服务,用于打通路由器与vmware本地虚拟机的网络。

参数说明:operation:应用名称,根据自身项目名称修改port:容器启动端口nodePort:对外提供服务端口,外部机器访问

将上面配置好的shell脚本复制到Post Steps -> 执行shell文本域中,并点击"保存" -> "立即构建"即可部署。

基于webpack构建的VUE项目部署,前面操作都一致,只是shell部署脚本稍有不同,这里主要详细说明rancher部署脚本。

Dockerfile参数说明:FROM:选择基础镜像包,前端统一使用tomcat容器部署,tomcat:85-jre8-slimCOPY:将/dist目录上传到镜像的/usr/local/tomcat/webapps/fastquery/目录EXPOSE:容器内部启动8080端口,根据自身项目填写指定端口,多个端口填写多行EXPOSE标签

这里不需要配置ENTRYPOINT标签,因为tomcat镜像包中已经有了。

用于创建docker镜像,就好比创建一个已经安装并且配置好了应用程序的操作系统镜像。

参数说明:19216810021:5000:为本地docker镜像服务器地址operation:latest:应用名称,根据自身项目名称修改

利用上面创建好的操作系统镜像启动一个vmware虚拟机,创建k8s容器。

前面vmware虚拟机创建好后,怎么能让别人访问?这个时候就需要创建一个网络服务,用于打通路由器与vmware本地虚拟机的网络。

参数说明:shutcm-fastquery-web:应用名称,根据自身项目名称修改port:容器启动端口nodePort:对外提供服务端口,外部机器访问

将上面配置好的shell脚本复制到Post Steps -> 执行shell文本域中,并点击"保存" -> "立即构建"即可部署。

额首先哈 eclipse最新的版本是44吧 

你这里的问题:应该是项目的配置,提示有个bean无法创建,你这里用的是jetty吧

你可以先不去部署项目,单独起一下jetty, 访问localhost:8080/ ,如果是maven集成的jetty话,默认应该会看到Hello World 的欢迎页面。

先试试

新建项目,选择Maven Module,输入项目名称,点击Next继续,如下图所示:

注意这里的Module就是项目的意思,等同于MyEclipse中的Project。

2

接着直接点击Finish即可,如下图所示:

3

如下图所示就是创建完毕后的Maven项目,双击pomxml查看POM文件内容,可以自行添加Maven的依赖。但是发现,没有Web目录,怎么办?

4

在项目名称上右击,选择Add Framework Support,如下图所示:

5

在Add Framework Support对话框中勾选Web Application,版本选择30并勾选Create webxml,如下图所示:

点击OK后,看到如下界面,项目中出现了web文件件,是不是很熟悉了,和MyEclipse中的项目结构类似,如下图所示:

打开pomxml文件,添加必须的Maven依赖。也叫Maven坐标,由groupId、artifactId和version唯一确定一组jar依赖文件,如下图所示:

然后在indexjsp文件中随便加点内容,如下图所示:

下面配置Tomcat服务器,本例使用Tomcat6,如下图所示:

如下图所示,选择Local,然后点击Configure,在弹出的对话框中选择Tomcat安装目录

选择Tomcat Server,然后点击绿色的“+”号,如下图所示:

点击“+”后选择Local,刚刚已经配置好了Local的Tomcat服务器,如下图所示:

这里会新建一个Tomcat服务,输入任意名字即可,如下图所示:

点击Deployment,然后点击右边的“+”,添加Artifact部署,如下图所示:

点击OK回到主界面,如下图所示,点击Application Servers打开服务器视图,点击Tomcat6[local],就能看到项目的部署情况了。点击界面上方的启动按钮就可以启动Tomcat服务器,启动后服务器自动打开浏览器。

maven 手动把本地jar安装到本地仓库

方法/步骤

1

是自己编写的一个jar文件,每次添加单个jar到maven本地仓库的操作如下: 1建立一个新的文件夹,将jar文件存放在该文件夹下。 注意文件夹下最好只存放该文件。 2在该文件夹下建立一个pomxml文件,在pom文件中定义其maven坐标。 3在cmd窗口中执行以下命令: mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>

例如:

mvn install:install-file -Dfile=D:/jar/xxxjar -DgroupId=xxxxxx -DartifactId=xxx -Dversion=xx -Dpackaging=jar

当Maven项目中的不刷新时,可能是由于以下几个原因导致的:

1 缓存问题:浏览器或代理服务器可能会缓存文件,导致即使文件已经更改,但浏览器仍然加载旧的缓存文件。可以尝试使用浏览器的强制刷新功能(通常是按下Ctrl + F5)或清除浏览器缓存,以确保加载最新的文件。

2 项目结构或路径问题:检查项目中文件的路径是否正确。确保文件位于正确的目录下,并且路径在代码中正确引用。另外,确保文件的命名没有错误,大小写是否匹配。

3 Maven构建问题:如果使用Maven进行构建,可能是因为Maven没有正确地将文件复制到目标目录(如target目录)中。可以检查Maven的构建配置文件(如pomxml)中是否包含正确的资源过滤和复制配置,以确保文件被正确地包含在构建结果中。

4 服务器配置问题:如果项目部署在服务器上,可能是服务器配置了缓存或代理,导致文件不刷新。可以尝试重启服务器或调整服务器配置,以确保文件能够及时更新。

如果尝试了以上方法仍然无效,建议进一步检查项目的日志文件或错误信息,以了解是否有其他相关的错误或警告提示。此外,如果使用了特定的前端框架或工具,可能还需要检查其相关配置和缓存机制。

如果问题仍然存在,建议咨询相关的开发人员或技术支持团队,以获取更具体的帮助和指导。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何在idea里自动部署maven生成的ear文件到glassfish

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情