网站建设阐述,加大网站建设力度,免费网站建设怎样,垂直网站最近#xff0c;我的一个好朋友在使用公共Oracle Maven存储库构建ADF应用程序v.12.2.1.2时经常遇到问题。 他要求我检查它是否对我有用。 好吧……没有。 因此#xff0c;存储库存在一些问题。 为了使实验整洁并避免对我的工作环境造成任何影响#xff0c;我决定在docker容器… 最近我的一个好朋友在使用公共Oracle Maven存储库构建ADF应用程序v.12.2.1.2时经常遇到问题。 他要求我检查它是否对我有用。 好吧……没有。 因此存储库存在一些问题。 为了使实验整洁并避免对我的工作环境造成任何影响我决定在docker容器中运行测试。 而且即使我不能帮助我的朋友抛出一些依赖异常也无法正常工作作为此检查的结果我得到了一个可重用的docker映像该映像用作ADF应用程序的预配置构建机器适用于12.2版。 1.3那时Oracle Maven存储库运行良好。 这是我所做的 1.拉并运行ubuntu Docker映像 $: docker run -it --name adfbuilder ubuntu 2.在adfbuilder容器中安装Java apt-get install software-properties-common python-software-properties
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java8-installer 3.在adfbuilder容器中安装Maven 只需下载Maven二进制文件并将其解压缩到某个文件夹中然后复制到容器中即可 docker cp ~/Downloads/apache-maven-3.5.2 adfbuilder:/opt/apache-maven-3.5.2 更新容器中的PATH环境变量 export PATH$PATH:/opt/apache-maven-3.5.2/bin 完成后 mvn应该可用。 在容器中运行它它将在用户家中创建一个隐藏的.m2文件夹。 4.在adfbuilder容器中配置Maven以与Oracle Maven存储库一起使用 只需放入隐藏的.m2文件夹 docker cp settings.xml adfbuilder:/root/.m2/settings.xml 包含以下内容的settings.xml文件 settings xmlnshttp://maven.apache.org/SETTINGS/1.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsdserversserveridmaven.oracle.com/idusernameeugene.fedorenkoflexagon.com/usernamepasswordMY_PASSWORD/passwordconfigurationbasicAuthScopehostANY/hostportANY/portrealmOAM 11g/realm/basicAuthScopehttpConfigurationallparamspropertynamehttp.protocol.allow-circular-redirects/namevalue%b,true/value/property/params/all/httpConfiguration/configuration/server/serversprofilesprofileidmain/idactivationactiveByDefaulttrue/activeByDefault/activationrepositoriesrepositoryidmaven.oracle.com/idreleasesenabledtrue/enabled/releasessnapshotsenabledfalse/enabled/snapshotsurlhttps://maven.oracle.com/urllayoutdefault/layout/repository/repositoriespluginRepositoriespluginRepositoryidmaven.oracle.com/idurlhttps://maven.oracle.com/url/pluginRepository/pluginRepositories/profile/profiles
/settings 基本上这足以在容器中编译Maven配置的ADF应用程序。 我们需要确保可以从容器访问我们的应用程序的源代码。 可以通过将源文件夹映射为从容器可见或仅将其复制到容器中来完成。 docker cp / mywork / MySampleApp adfbuilder/ opt / MySampleApp 完成此操作后我们可以运行以下命令来编译应用程序 docker exec adfbuilder mvn -f /opt/MySampleApp/pom.xml编译 5.将JDeveloper二进制文件复制到容器中 由于我们希望超越这一点不仅能够编译而且能够生成可部署的工件耳朵罐子等所以我们需要将JDeveloper二进制文件放入容器中基本上 maven需要ojdeploy。 我刚刚将Mac_目录中的Oracle_Home文件夹复制到了容器中 docker cp /My_Oracle_Home adfbuilder:/opt/Oracle_Home 所以现在我能够建立一个耳朵我的容器应用程序 docker exec adfbuilder mvn -f /opt/MySampleApp/pom.xml package -DoracleHome/opt/Oracle_Home 对于第一次运行它可能会要求您提供JDK的路径 [INFO] Type the full pathname of a JDK installation (or Ctrl-C to quit), the path will be stored in /root/.jdeveloper/12.2.1.3.0/product.conf/usr/lib/jvm/java-8-oracle 6.提交对容器的更改 我们需要做的最后一件事是将更改提交到容器 docker commit adfbuilder efedorenko/adfbuilder 这将创建一个新的ubuntu映像其中包含我们应用的所有更改。 我们可以轻松地在基础架构中的任何位置运行该映像并将其用作ADF应用程序的构建机器。 它的优点在于我们可以在像Docker Cloud由AWSMicrosoft AzureDigital Ocean等支持或Oracle容器云服务等云中运行它也可以随便使用它。 使用这种方法云中的服务器可以为您构建应用程序这通常是一项非常耗资源的工作。 就是这样 翻译自: https://www.javacodegeeks.com/2018/01/building-oracle-adf-applications-docker.html