当前位置: 首页 > 面试题库 >

从Eclipse打包和部署Jython程序

司徒浩思
2023-03-14
问题内容

因此,我一直不愿意编写一些Jython代码。我一直在使用带有PyDev插件的最新版本的Eclipse
IDE进行开发。到目前为止,情况尚可忍受。我已经使用了所有的Python脚本,并且成功地包含了两个JAR文件和另一个Java项目的类目录作为外部依赖项。一切似乎都可以通过Eclipse
IDE正常运行。

现在,我需要打包所有内容并进行部署。据我所知,最好的方法是将所有内容打包到一个JAR文件中。Jython文档建议从jython.jar文件开始并添加到其中。好。因此,我修改了我的主要python模块,并开始将所有python源添加到JAR中。

它执行,但当然找不到所有外部依赖项。

应该如何添加外部JAR文件,以便Jython解释器正确看到它们?应该如何在这样的设置中管理更复杂的依赖关系?

是否有适用于Eclipse的插件,或者可能是诸如Ant或Maven之类的插件,可以通过按一下按钮为我处理所有这些步骤?

我不能成为第一个需要部署具有复杂依赖关系的Jython代码的人吗?


问题答案:

我在使所有这些工作都取得了一些进展,所以我想在这里写下一些笔记,以防他们帮助其他人。我仍然想从其他人那里听到他们试图将这样的东西组合在一起的经验。

事实证明,从3.5版开始,Eclipse具有Java-> Runnable JAR
File的项目导出选项。如果使用此选项,则可以在导出向导中指向Java主类。您还可以选择将其重新打包在新JAR文件中依赖的所有JAR。确保选中该复选框以将导出另存为ANT版本,以便您可以快速重复该过程。注意,第一次通过接口执行此操作可能会失败,但仍会创建一个JAR文件。

现在,这里变得奇怪了。为了跟踪所有依赖关系,我仍在项目中使用几乎不完整的Maven构建。我创建了Maven
.POM文件。我告诉Maven我的外部JAR依赖是什么。然后,我告诉Maven为我做一个依赖更新。它按预期将所有内容都放入了我的Mavenhtml" target="_blank">存储库。

现在,当我执行我的ANT构建时,看来它正在将其JAR列表包含在Maven的最终构建中。我不确定它是否可以那样工作。我也不是100%肯定它能正常工作。我想我将找出何时必须向该项目添加另一个外部JAR。

无论如何,如果您遵循此问题,您将看到可以使用最新版本的Jython,并将org.python.util.JarRunner.java文件拉出并在您自己的项目中使用。这是Java.main类,您需要将其指向ANT构建。从那里,将您的主要Python
/ Jython脚本转换为该问题中讨论的 运行 脚本。

接下来,在您的Jython目录中构建Jython JAR文件的另一个副本。这应该将/
Lib目录放入JAR。将此保存下来,然后将PyDev项目的Eclipse IDE Jave
Build选项作为外部依赖项指向该JAR。您的JarRunner现在将工作并执行Jython下的 run .py文件。

如果一切正常,那么您应该能够重新运行较早版本的ANT导出的内部版本,最终得到一个可以在命令行上执行的单一JAR文件:

java -jar {yourjar} args

并分发给您的客户,而无需任何其他依赖。

如果这一切看起来有点令人费解,那就是。如果有人可以使用Eclipse更好地设置所有内容,请告诉我。



 类似资料:
  • 打包 直接使用下面命令,就可以把vue项目打包: $ npm run build 如下: siwei@siwei-linux:/workspace/test_vue_0613$ npm run build > test_vue_0613@1.0.0 build /workspace/test_vue_0613 > node build/build.js ⠦ building for prod

  • Spring和Spring Boot都支持maven和Gradle通用打包管理技术。 Spring Boot相对Spring的一些优点: 提供嵌入式容器支持; 使用命令java -jar独立运行jar; 部署时可以灵活指定配置文件; 最近项目是分布式的项目,都是通过分项目打包部署,然后部署在docker中运行。

  • 看完前面的文档,你会发现使用 Blade 开发Web应用是简单的、快速的,当然也功归于约定。 我们使用 Maven 构建项目,打包同时也可以用它,如果你对 Maven 插件熟悉的话可能也用过了, 当然没用过也没关系,你只需要按照下面的操作配置一下即可。 打包工程 添加插件 <build> <finalName>hello</finalName> <plugins>

  • 问题内容: 我是Node.js编程的新手,我最近使用mongoDB创建了一个示例工作Web应用程序(express,bone和其他免费视图技术)。现在,我正要在暂存环境中部署该应用程序,但我不确定如何打包此应用程序并将其分发。[我可以照顾mongoDb并单独进行设置] 我来自Java世界,在那里我们为可重用的libs创建了jars,并为servlet容器中部署的Web应用程序创建了war / ea

  • 我试图在配置为eclipse的Jboss服务器中部署ear文件,但当我试图部署它时,它总是以超时异常结束。我试图增加我的服务器超时时间,但似乎没有帮助。但是同一个ear当我尝试在eclipse之外的同一台服务器上部署时,它被成功地部署,即使在通过google处理了几个相关问题之后,也无法找到根案例。 根据我的观察,这个问题似乎不是由于jboss配置造成的,因为当直接部署时,同一个ear和服务器似乎

  • 1. 前言 项目开发完毕后,免不了将前后端应用打包,然后部署到生产服务器上运行。本篇就演示一个标准的打包、部署过程。 2. 操作流程 我们以上一篇开发的前后端分离项目 spring-boot-cors 为例进行打包、部署演示,步骤如下: 2.1 服务器运行环境安装 一般服务器采用 Linux 或者 Windows Server 系统,相对而言 Linux 系统更加稳定安全。实际上 Windows