是否可以在命令行/作为网络服务中 运行 java 应用程序

Is it possible to run java application in both commandline / as a webservice

我想创建一个像比特币一样的 java 应用程序 client.But 它将在命令行 cmd 上运行,并作为网络服务提供给其他咨询我的 client.Which 技术的客户 我应该使用处理我的 task.Please 给我一个解释问题的例子

预期

猜猜这就是你所期待的

  1. 运行 来自命令行的 Java 程序或作为 OS 服务
  2. 该程序应该是向其他消费者公开一些 API 的 Web 服务

解决方案

  • 您可以借助 Spring MVC、Spring Boot 和 Maven

原因

  • Spring MVC 可用于将您的业务公开为 REST 网络服务
  • Spring Boot 可用于像普通 Java 应用程序一样启动 Web 服务应用程序(使用主 class),而无需使用 Tomcat 等外部 Web 服务器或码头
  • Maven 构建工具可用于从 Spring 引导应用程序
  • 创建一个胖 jar(具有所有依赖项的单个 jar 文件)
  • 您将运行从命令行生成 fat jar,但服务仍将公开为 REST 服务

参考

  • 使用https://start.spring.io/
  • 这个 Spring 自己的托管工具将为您生成所有样板代码。您只需将下载的 zip 导入您的工作区并添加您的业务逻辑
  • 要构建一个胖罐,您不需要做任何特别的事情。只是 运行 mvn clean install。样板将有一个 pom.xml 文件,用于生成 fat jar