草庐IT

java - 如何从 Netbeans 中在远程服务器上部署 jar 文件?

coder 2024-03-15 原文

我开发了一个服务器 [server.jar],现在运行良好(在我的本地主机上)。现在我想把这个 server.jar“放在”我的远程服务器上(即:122.152.12.33)并在那里运行它,所以我的客户端应用程序用这个 ip 替换“Localhost”并连接 [server.jar]...

我该怎么做?

我找到了答案但不理解它们(WAR?和一些配置)。

我正在使用 NetBeans IDE。使用 netbeans 部署 Jar 文件并转换为 war。

注意我也是用Mysql数据库,必须上传到服务器端。

*更新: 另一个相关问题:

如果我想在现有网站(Wordpress 发布的网站)上试用我的 server.jar,只需将我的项目添加到文件夹中,这会损害在线网站吗?

我可以使用 php 来运行 Jar 吗? (在线站点是 Link。我想创建一个文件夹 http://akhbarna.com/MyPrject/ ... 然后将 Jar 放在那里并通过 Php 运行它。 可能吗?这对在线网站有何影响?

最佳答案

在您的 IDE 中运行距离发布和工作还有很长的路要走 ;-)

你的问题很笼统,所以我的回答也很笼统,但涵盖了基本方法。

关键是考虑在全新的台式 PC 上运行 hello world 应用程序需要什么 - 您需要安装 Java,创建一个文件夹来包含您的应用程序和一些运行该程序的脚本,然后复制你的 jar 到新的台式电脑并运行这些脚本。它在服务器上没有什么不同,只是您可能会使用第 3 方库,并且可能安装的不仅仅是 Java。

在我们了解更多细节之前,首先,构建、发布和部署空间中的术语往往非常多。为了澄清,在以下答案中我的意思是:

  • 工件 - 项目生成的 jar、war、zip、包等。
  • 发布 - 构建您的代码以创建工件并部署它。
  • 部署 - 将工件上传到存储库。
  • 安装 - 从存储库中取出一个工件并放在服务器上以便它可以运行。

我假设您是从头开始,并且在专业环境中工作。

首先要做的是准备您的服务器。就像您在桌面上所做的那样,您将需要安装一些软件——如果您要构建 Web 应用程序,则至少需要安装 Java 和 MySQL 以及 Tomcat 等 Servlet 容器。您有两个选择,您可以手动进行这些安装,也可以使用类似 Puppet 的工具。使它们自动化 - 我推荐后者,因为一旦设置好,您可以在几分钟而不是几天内构建一个服务器。

然后您将需要某种独立于 IDE 的构建过程。当前流行的工具是 MavenGradle .构建的目的是生成一个工件,其中包含必须添加到服务器以安装应用程序的所有内容。在独立应用程序的情况下,这可能是一个 zip,其中包含一个磁盘镜像(jar(s)、配置、启动/停止脚本),或者在网络应用程序的情况下是一场 war ,它是网络应用程序的标准部署结构。

接下来,您需要为您的应用程序和数据库脚本执行某种发布流程。我最熟悉 Maven,它能够创建 jar、war、专有的 zip 或包,并且使用它的 Release Plugin ,执行执行发布所需的所有更新、VCS 标记和部署(到存储库,例如 Nexus)。数据库有点棘手,通常由将应用数据库更改的 DBA 决定——通常您最终会得到创建和修改数据库所需的脚本以及以正确顺序运行这些脚本的主脚本。将它们放入 zip 中并放入存储库中以进行安全保存。

发布后,您需要通过某种方式从存储库中获取工件并将它们安装到服务器上。显然这可以手动或使用脚本完成,但我再次建议使用 Puppet ,至少对于针对服务器的工件。对于数据库脚本,虽然这也可以自动化,但更常见的是连接到数据库并使用数据库控制台手动应用脚本(不要忘记在安装新版本之前备份代码和数据库)。

终于可以启动系统了。

关于java - 如何从 Netbeans 中在远程服务器上部署 jar 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21184441/

有关java - 如何从 Netbeans 中在远程服务器上部署 jar 文件?的更多相关文章

  1. ruby - 如何使用 Nokogiri 的 xpath 和 at_xpath 方法 - 2

    我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div

  2. ruby - 如何从 ruby​​ 中的字符串运行任意对象方法? - 2

    总的来说,我对ruby​​还比较陌生,我正在为我正在创建的对象编写一些rspec测试用例。许多测试用例都非常基础,我只是想确保正确填充和返回值。我想知道是否有办法使用循环结构来执行此操作。不必为我要测试的每个方法都设置一个assertEquals。例如:describeitem,"TestingtheItem"doit"willhaveanullvaluetostart"doitem=Item.new#HereIcoulddotheitem.name.shouldbe_nil#thenIcoulddoitem.category.shouldbe_nilendend但我想要一些方法来使用

  3. ruby - 使用 ruby​​ 和 savon 的 SOAP 服务 - 2

    我正在尝试使用ruby​​和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我

  4. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  5. ruby-on-rails - 如何验证 update_all 是否实际在 Rails 中更新 - 2

    给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru

  6. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  7. ruby - 具有身份验证的私有(private) Ruby Gem 服务器 - 2

    我想安装一个带有一些身份验证的私有(private)Rubygem服务器。我希望能够使用公共(public)Ubuntu服务器托管内部gem。我读到了http://docs.rubygems.org/read/chapter/18.但是那个没有身份验证-如我所见。然后我读到了https://github.com/cwninja/geminabox.但是当我使用基本身份验证(他们在他们的Wiki中有)时,它会提示从我的服务器获取源。所以。如何制作带有身份验证的私有(private)Rubygem服务器?这是不可能的吗?谢谢。编辑:Geminabox问题。我尝试“捆绑”以安装新的gem..

  8. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  9. ruby - 如何指定 Rack 处理程序 - 2

    Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack

  10. ruby - 如何每月在 Heroku 运行一次 Scheduler 插件? - 2

    在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/

随机推荐