java - 将我的静态程序分析器创建为 Web 应用程序的演示? [不向客户发送 .jar 文件]

标签 java web-applications static-analysis

我一直在开发一个静态程序分析器(一种试图在编译时检测程序错误的工具),快完成了。我想把一个演示版本放到网上,以便少数对该工具感兴趣的人可以测试它的功能。

上下文: 1. 我有一台个人电脑,必要时用作服务器。否则,我不确定将演示程序放到我研究所的计算机上在技术上是否可行,因为他们的计算机没有用于启动演示程序所需的库。

  1. 我正在使用 Eclipse 和 Maven 开发这个分析器。分析器是用 Java 编写的。

  2. 分析器有些耗时。例如,完成一项有趣的工作需要 5 秒和 500 Mo JVM 虚拟内存。所以我需要限制访问者的数量。

  3. 我不打算将 .jar 文件发送给客户,因为我不知道他们是谁。

  4. 我对网络应用一无所知。

在这种情况下,您认为在网络上展示我的分析器的最简单方法是什么?

这可能与大多数有关如何将桌面程序转换为 Java Web 应用程序的问题不同,例如 this

谢谢。

[已编辑] 如果要考虑上述约束条件 3,最佳解决方案是什么?

最佳答案

您可能正在寻找 Java Web Start ,流行的分析器使用的部署选项, FindBugs .这example说明了几个关键概念并利用了最低成本的托管。

附录:@Capn Sparrow 有益地评论说 Java Web Start 从服务器下载程序的 JAR 副本到客户端,这违反了问题中的第三条要求。这需要进行多项风险/ yield 权衡:

  • 优点:服务器可以轻松更新,确保客户端始终拥有最新版本。 JAR 缓存在客户端上,最大限度地减少更新延迟。

  • 缺点:缓存的 JAR 可能会被反编译或篡改。用户必须接受任何 <security>选择设置或拒绝该应用程序。使用 jarsigner 可以减轻一些风险。

关于java - 将我的静态程序分析器创建为 Web 应用程序的演示? [不向客户发送 .jar 文件],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13437659/

相关文章:

java - 排序数组不起作用

java - 如何使用映射结构中的列表将列表映射到对象

c# - 使用 Adob​​e Air/Java 编写 Web 应用程序而不是平台特定语言的优点/缺点?

java - 部署在 tomcat 上的 Web 应用程序首次访问速度很慢?

Java静态分析器自定义模板/规范

java.lang.错误: Unresolved compilation problem:

java - 安卓自定义 View : MATCH_PARENT with OnDaw don't work

python - 生成 PDF 文件的 Web 服务器

c++ - 使用 LLVM 进行静态源代码分析

java - 使用 SonarQube 5.4 配置 CheckStyle