Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为每个团队成员在unix中设置java开发环境_Java_Hibernate_Spring Mvc_Docker_Quartz Scheduler - Fatal编程技术网

如何为每个团队成员在unix中设置java开发环境

如何为每个团队成员在unix中设置java开发环境,java,hibernate,spring-mvc,docker,quartz-scheduler,Java,Hibernate,Spring Mvc,Docker,Quartz Scheduler,早些时候,我在RubyonRails上工作。 我们,所有的开发者都曾经从docker那里获取最新的图片。 一旦docker启动并运行,我们就可以在本地进行开发。 代码更改完成后,我们会将其推送到各自的git分支,合并后,我们会将其部署到生产环境中。 该应用程序托管在Heroku上 (正如您所看到的,所有开发人员都使用自己的本地副本。Postgress数据库配置和虚拟数据已为本地副本设置) 现在,作为一家新成立的公司,我们正在使用java、spring、hibernate和quartz 我们希望像

早些时候,我在RubyonRails上工作。 我们,所有的开发者都曾经从docker那里获取最新的图片。 一旦docker启动并运行,我们就可以在本地进行开发。 代码更改完成后,我们会将其推送到各自的git分支,合并后,我们会将其部署到生产环境中。 该应用程序托管在Heroku上

(正如您所看到的,所有开发人员都使用自己的本地副本。Postgress数据库配置和虚拟数据已为本地副本设置)

现在,作为一家新成立的公司,我们正在使用java、spring、hibernate和quartz

我们希望像我在开始时讨论的那样建立类似的体系结构

我在谷歌寻找解决方案。许多作者和文章建议使用jenkins和github,但没有一篇文章提到完整的开发环境设置过程,因此每个开发人员都可以独立工作

主要目标-

  • 每个开发人员都必须获得自己的本地副本并使用它(Java)
  • 本地预配置数据库
  • 转储虚拟数据
  • 部署过程(heroku for rails等java应用程序的最佳托管服务是什么)
  • 最终目标:- 一个新的参与者运行一个shell脚本,整个开发环境都为他设置好了,他可以在同一天开始为项目做出贡献

    考虑到java的启动、数据库的性能、成本和可靠性,哪个数据库应该与java一起使用?(Mysql或posstgresql或任何其他)

    考虑到Java的启动、数据库性能、成本和可靠性,应该再次使用哪个操作系统?(Ubuntu或Windows,目前我们使用的是Ubuntu)


    在使用java、spring、hibernate和quartz技术的同时,为每个开发人员设置整个独立开发环境的最佳解决方案(逐步)是什么。对我们来说效果很好,也许还有其他更好的选择

    • Postgres是一个很好的数据库
    • 我们使用Centos在本地生产Fedora,因此它将是同一个linux系列。无论如何,我不认为有任何理由使用Windows进行开发
    • 您可以使用hibernate从JavaPOJO实体创建db模式和表
    • 我们有脚本,可以用所需的值预先填充某些表。例如,用户表
    • 所有脚本都通过执行maven命令集成运行
    • 我们使用脚本创建dev env,并配置本地apachehttpd代理和许多其他东西。这可能相当复杂
    • 我们使用Artifactory来保存和缓存当前和以前的maven工件,包括我们的产品和maven依赖项
    • 至于石英,这应该不是问题。请注意,Spring与石英集成在一起,请使用它
    • 我们使用本地Gitlab作为我们的回购协议
    • 我们在CI中使用了本地托管的Jenkins

    我将回答我们在我之前工作过的初创公司中所做的事情。对我们来说效果很好,也许还有其他更好的选择

    • Postgres是一个很好的数据库
    • 我们使用Centos在本地生产Fedora,因此它将是同一个linux系列。无论如何,我不认为有任何理由使用Windows进行开发
    • 您可以使用hibernate从JavaPOJO实体创建db模式和表
    • 我们有脚本,可以用所需的值预先填充某些表。例如,用户表
    • 所有脚本都通过执行maven命令集成运行
    • 我们使用脚本创建dev env,并配置本地apachehttpd代理和许多其他东西。这可能相当复杂
    • 我们使用Artifactory来保存和缓存当前和以前的maven工件,包括我们的产品和maven依赖项
    • 至于石英,这应该不是问题。请注意,Spring与石英集成在一起,请使用它
    • 我们使用本地Gitlab作为我们的回购协议
    • 我们在CI中使用了本地托管的Jenkins

    非常感谢您的回复,但您能否详细介绍一下我们使用脚本创建dev env的部分,以及本地apache httpd代理的配置和许多其他内容。这可能相当复杂。任何详细步骤的链接,或者您可以从您的终端提供深入的见解,以及如何使用Artifactory保存和缓存当前和以前的maven工件,包括我们的产品和我们的maven依赖项。(我正在浏览Artifactory的官方文档)关于脚本-它做了很多事情,但基本上我们用来在服务器上安装web应用程序的所有脚本(在干净的环境中),也都安装在我们自己的开发机器上。现在我还记得,在某个时候,我们开始使用chef,然后我们用来安装新服务器的cookbooks也可以安装一个新环境(您可以使用许多已经制作好的chef副本)。工作环境和产品环境之间几乎没有区别。但也许docker仍然可以让它变得更简单。至于Artifactory(还有一些脚本),我不能在这里深入讨论更多细节。但是webHi上应该有很多教程,浏览了很多文章。现在我们将使用Docker、Maven和Jenkin构建我们的开发环境。疑问:如果我们使用docker,那么我们不需要任何额外的容器/服务器(如tomcat或glassfix),对吗?嗨,我没有任何理由认为docker会影响使用/不使用tomcat等。但是我没有将docker与Java一起使用,所以可能有一些我不知道的事情。另外,请考虑使用OpenJDK代替Oracle JDK。根据Oracle JDK与DoCKER的使用可能有问题,反正很多人认为OpenJDK比Oracle JDK好。非常感谢您的回复,但是请您详细说明我们使用脚本的部分