0

我正在开发一个将被下载并且必须离线工作的 webapp(在浏览器上本地打开)。

但是大多数将要使用它的用户并不精通技术,所以我不能有一个包含 index.html 或 .exe 的文件夹来打开 index.html。

我在想是否有可能有一个 file.exe 包含其中的所有文件并创建一个临时文件夹来访问该文件?

谢谢,对不起,如果它不是一个非常技术性的问题版主。

4

1 回答 1

1

一般回答:

是的,java 基本上有一个非常好的解决方案,但你最终会得到一个 .jar,如果它不是通过双击它开始的,那么没有人知道该怎么做。但是,在您的情况下,我会尝试生成一个 jar,您可以在本地双击并执行您希望它执行的所有操作。

到目前为止,您仍然是平台独立的。

然后检查诸如 InstallAnywhere 之类的软件以生成合适的安装程序。人们知道他们只需点击下一步几次,然后对任何免责声明说“是”。

然后,您的最终安装程序将依赖于平台,因此您拥有适用于 Windows、MacOS 等的安装程序。

更新 2: 再次感谢您更详细的回复。如果不需要服务器端逻辑和数据库,但只有静态 html 页面,其中包含一些 JavaScript,则可以使用 InstalAnywhere 或任何其他创建安装程序的软件包装这些文件。它基本上只会告诉用户“可以将我的文件存储在那里吗?” 然后创建一个漂亮的图标以在系统标准浏览器中打开您的 index.html ;)

更新: 更新 2:这不是你想要的 ;)

感谢您的回复。在这种情况下,我看不到任何其他可能性,但是:

1.) 以您使用的语言的适当包格式构建您的 Web 应用程序(在 Java 中,这将是一个 .war 文件)。

2.)您可能必须编写小帮助程序以内置到 InstallAnywhere(或任何其他用于创建安装程序的软件)中,这些程序可能类似于:

- A small helper (could just be a .sql file) to create your database with all the tables and stuff. 

- A small helper running a maven, ant or any other tool that can deploy your packed webapp to a local webserver 

- A small helper setting required environment variables (like JAVA_HOME in case of Java or stuff). 

=> 基本上是您在本地开发环境中配置的任何内容。

3.) 创建一个安装程序来安装数据库并运行你的 sql 来创建表、权限、角色和东西,可能已经用数据初始化了某些表。然后安装/配置网络服务器,最终告诉安装程序运行你的小助手,将你打包的网络应用程序部署到本地网络服务器。

完成所有这些操作后,最后一步是创建一个图标,双击它会打开系统默认浏览器并启动您的 localhost 托管的 Web 应用程序。

我知道这并不比以前更具体,但它让您了解在目标主机上需要什么来在本地运行 web 应用程序。

更新安装程序:

不幸的是,我像 5 年前一样使用 InstallAnywhere 构建了我的最后一个安装程序。据我所知,InstallAnywhere 不是免费软件,但可能提供了最好的功能。但是,由于您不需要太多东西,这就是 id 下一步要做的事情:

  • 搜索“Free InstallAnywhere Alternative”、“best installanywhere...”等。也许你很幸运,能从中得到一些好处。

这是因为即使您不需要那么多逻辑(实际上是解包您的页面、js 脚本、css 等),上述程序也会处理一些操作系统特定的东西,并为您的最终用户提供可接受的(主要是可定制的)外观和感觉。

由于在功能上您不需要更多:

  • 用于打包页面、脚本和内容的 zip、rar 或任何其他包(您自己创建)

  • 有人解压缩/解压缩等。上面提到的包到用户选择的目的地

  • 触发底层操作系统打开标准浏览器并打开您的 indey.html 的 exe、链接、快捷方式

您也可以编写自己的安装程序。但这将是我最后的选择。

于 2013-10-28T16:28:26.090 回答