# startWeb **Repository Path**: YX503203440/start-web ## Basic Information - **Project Name**: startWeb - **Description**: 启动一个静态web服务器 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-07-12 - **Last Updated**: 2024-11-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### startWeb 作为一名开发者,我们经常需要在两台电脑上进行文件传输,或者需要将手机上的文件导入到电脑,很多时候我们会选择登上QQ,微信这类工具,通过文件传输助手进行传输,这有几个主要的难点: - 需要登录qq或者微信,或者说很多时候需要连接互联网 - 传输效率低下,因为存在中转导致文件经历了两次传输 于是我开发了一个局域网传输软件,最开始的灵感来自于nginx的目录映射服务,当我需要在一个电脑上给同事传输一个较大的文件的时候,我会选择启动一个nginx进程,然后修改配置文件夹将某个目录映射出去,但是每次需要这个操作的时候就得去修改配置文件以及将要传的文件放到配置的文件夹,偶然有一天我发现vertx提供一个开箱即用的静态文件服务,于是便有了开发一个这样的工具的想法。 **startWeb怎么用** 未启动状态下“选择目录”后修改端口号,点击“start”即可启动服务 ![未启动](./src/main/resources/readme/shutdown.jpg) 启动后共享目录和端口将不可修改,此时点击"复制URL"可将http链接复制到剪贴板,也可扫描二维码访问,下拉框选定的ip地址将被生成二维码的http链接,并且复制的也是当前选定的ip对应的地址(web服务绑定在0.0.0.0即任何网卡皆可访问)。web服务启动成功后,任务栏的图标将变成绿色,此时点击右上角的红色退出按钮将不会直接退出应用程序,程序会以托盘图标的形式继续运行,如果web服务未启动,则点击红色按钮会直接退出应用程序 ![已启动](src/main/resources/readme/started.jpg) 以下是复制链接pc端打开截图 ![web_pc页面截图](src/main/resources/readme/web_pc.jpg) 移动端截图 ![移动端截图](src/main/resources/readme/web_h5.jpg) **如何自行编译** > 我已将项目编译为fat jar和包含运行时(openj9 jdk)的exe可执行文件打包为压缩包解压即可使用,你可以直接选择自己方便的方式使用,如果你还想自己编译那么你需要如下配置 > > 项目使用jdk1.8.0_351,maven-3.9.0 > > 配置好jdk及maven环境变量后,项目根目录执行: > > ```shell > mvn clean package -DskipTests=true > ``` > > 运行完毕后target目录下生成的start-web-run.jar即为fat jar,可以使用java -jar 执行,Windows下如果关联了java.exe显示咖啡图标可以直接双击运行 > > 如果你希望打包为包含java运行环境,可以拿到任何没有java环境的电脑上,那么你也可以切换到java17分支,java17分支上的readme会告诉你如何使用jpackage将runtime一起打包,为什么要单独弄一个java17分支?因为java8不支持模块化,打包runtime很大,所以在jdk17分支中添加了module-info文件,使用jdeps分析依赖后使用jpackager精简运行时以得到更小的发行包