首页 文章

使用java命令部署jenkins war文件

提问于
浏览
0

我正在尝试部署jenkins war文件 . 我执行了以下命令

java -jar jenkins.war

以下是日志文件 .

PS C:\ Sites> java -jar jenkins.war运行于:C:\ Sites \ jenkins.war webroot:$ user.home / .jenkins Sep 03,2014 6:09:15 PM winstone.Logger logInternal INFO:Beginning从战争文件中提取2014年9月3日下午6:09:28 org.eclipse.jetty.util.log.JavaUtilLog信息INFO:jetty-8.yz-SNAPSHOT 2014年9月3日下午6:09:35 org.eclipse.jetty .util.log.JavaUtilLog info INFO:NO JSP支持,没找到org.apache.jasper.servlet.JspServlet Jenkins主目录:C:\ Users \ Mathew.jenkins发现于:$ user.home / .jenkins Sep 03 ,2014 6:09:46 PM org.eclipse.jetty.util.log.JavaUtilLog info INFO:已启动SelectChannelConnector@0.0.0.0:8080 Sep 03,2014 6:09:46 PM winstone.Logger logInternal INFO:Winstone Servlet Engine v2 .0运行:controlPort =禁用2014年9月3日下午6:09:46 jenkins.InitReactorRunner $ 1 onAttained INFO:开始初始化2014年9月3日下午6:10:26 jenkins.InitReactorRunner $ 1 onAttained INFO:列出所有插件Sep 03,2014下午6:10:26 jenkins.InitReactorRunner $ 1 onAttained INFO:Prep所有插件9月03,2014 6:10:26 PM jenkins.InitReactorRunner $ 1 onAttained INFO:开始所有插件2014年9月3日下午6:10:26 jenkins.InitReactorRunner $ 1 onAttained信息:增强所有扩展程序Sep 03,2014 6:10 :26 PM jenkins.InitReactorRunner $ 1 onAttained INFO:已加载所有工作2014年9月3日下午6:10:42 org.jenkinsci.main.modules.sshd.SSHD启动信息:在港口55062开始SSHD 2014年9月3日6:10:下午45点jenkins.InitReactorRunner $ 1 onAttained INFO:已完成初始化2014年9月3日下午6:10:45 hudson.WebAppMain $ 3运行信息:Jenkins完全正常运行2014年9月3日下午6:11:48 hudson.model.DownloadService $可下载的负载信息:获取hudson.tasks.Maven.MavenInstaller的更新数据文件2014年9月3日下午6:11:51 hudson.model.DownloadService $可下载的负载信息:获取hudson.tasks.Ant.AntInstaller的更新数据文件Sep 03,2014 6:11:52 PM hudson.model.DownloadService $可下载负载信息:获取hudson.tools.JDKInstaller的更新数据文件9月03,2 014 6:12:11 PM hudson.model.UpdateSite updateData INFO:获取UpdateSource默认的最新更新中心数据文件

  • 谁能告诉我 java-jar jenkins.war 命令的作用是什么?

  • WHere是否部署了我的war文件?

  • 它使用哪个Web服务器以及localhost:8080如何指向jenkins应用程序?

3 回答

  • 1

    问:谁能告诉我java -jar jenkins.war命令的作用是什么?

    java -jar 需要一个jar文件名,在本例中为jenkins.war .

    可执行Java程序可以与程序使用的任何库一起打包在JAR文件中 . 可执行JAR文件具有使用Main-Class指定入口点类的清单:myPrograms.MyClass和显式Class-Path(并忽略-cp参数) . 某些操作系统可以在单击时直接运行它们 . 典型的调用是命令行中的“java -jar foo.jar”

    参考:http://en.wikipedia.org/wiki/JAR_(file_format)

    问:它在哪里部署我的war文件?

    如果它是RHEL / CentOS安装,您的战争部署在 /var/lib/jenkins

    您可以通过阅读文件/etc/init.d/jenkins找到该位置 . 你会发现一个名为 JENKINS_CONFIG 的变量

    JENKINS_CONFIG=/etc/sysconfig/jenkins
    

    问:它使用哪个Web服务器以及localhost:8080如何指向jenkins应用程序?

    如果它是RHEL / CentOS安装,您通常会在此处找到该文件: /etc/sysconfig/jenkins . 在此文件中,您可以定义Jenkins运行的端口 .

  • 2

    1)它执行java arvhive jenkins.war(参见http://docs.oracle.com/javase/7/docs/technotes/tools/windows/jar.html

    2)从您自己发布的输出:

    Running from: C:\Sites\jenkins.war webroot: $user.home/.jenkins
    

    user.home 变量可以指Linux上的 ~ 目录,或Windows上的文档和设置 . 见http://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html

    3)从您自己发布的输出:

    jetty-8.y.z-SNAPSHOT INFO: Started SelectChannelConnector@0.0.0.0:8080

    http://www.eclipse.org/jetty/ . 这是一个在端口8080上注册侦听器的Web服务器 .

  • 2

    它在里面使用Manifest.mf,如果你打开战争,你会理解它是如何运行的

    Main类使用winstone http://winstone.sourceforge.net/

    我建议使用glassfish,jetty或tomcat - 以更好地控制配置

    有一个错误的开放https://issues.jenkins-ci.org/browse/JENKINS-18366

    另见容器备注https://wiki.jenkins-ci.org/display/JENKINS/Containers

相关问题