GithubHelp home page GithubHelp logo

budikaka / jhipster-pro-sample Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 1.53 MB

JavaScript 20.53% Shell 0.04% Dockerfile 0.01% Java 35.47% ANTLR 0.01% HTML 1.79% TypeScript 14.46% Vue 25.19% Less 1.52% CSS 0.73% SCSS 0.26%

jhipster-pro-sample's Introduction

项目名称:jhipsterSampleApplication

本项目是基于 JHipster 7.0.1,使用 Pro701 蓝图生成,您可以在相应位置找到文档和帮助:https://www.jhipster.tech/documentation-archive/v7.0.1 , Pro701 蓝图参考文档:JHipster.Pro

开发说明

在生成此项目之前,必须在计算机上安装和配置以下依赖项:

  1. Node.js: 我们使用 Node 来运行开发 Web 服务器并构建项目。 根据您的系统,可以从源安装或作为预打包的捆绑包安装 Node。

安装 Node 之后,您应该能够运行以下命令来安装开发工具。 仅当package.json中的依赖项发生更改时,才需要运行此命令。

npm install

如果您的 npm 版本大于 7.0,则可能必须运行以下命令。

npm install  --legacy-peer-deps

本项目使用 npm 脚本和Webpack作为我们的构建系统。

如果将 redis 用作高速缓存,则必须启动高速缓存服务器。 要启动缓存服务器,请运行:

docker-compose -f src/main/docker/redis.yml up -d

也可以通过添加到应用程序 yaml 配置文件来关闭缓存:

spring:
    cache:
        type: none

点此here查看更多。

警告:如果您使用第二级 hibernate 缓存并禁用 spring 缓存,则也必须禁用第二级 hibernate 缓存,因为它们正在使用 相同的 CacheManager。

在两个单独的终端中运行以下命令,以创建愉悦的开发体验,当硬盘驱动器上的文件更改时,浏览器会自动刷新。

./mvnw
npm start

Npm 还用于管理此应用程序中使用的 CSS 和 JavaScript 依赖项。 您可以通过在package.json中指定较新的版本来升级依赖项。 您还可以运行npm updatenpm install来管理依赖项。 在任何命令上添加help参数,以查看如何使用它。 例如,npm help update

The npm run 命令将列出可用于该项目的所有脚本。

PWA 支持

JHipster 附带 PWA(渐进式 Web 应用程序)支持,并且默认情况下处于关闭状态。 PWA 的主要组成部分之一是 service worker。

默认情况下,服务工作者初始化代码被注释掉。 要启用它,请在src/main/webapp/index.html中取消注释以下代码:

<script>
  if ('serviceWorker' in navigator) {
    navigator.serviceWorker.register('./service-worker.js').then(function () {
      console.log('Service Worker Registered');
    });
  }
</script>

注意:Workbox为 JHipster 的 service worker 提供助力。 它动态生成service-worker.js文件。

管理依赖

例如,要将Leaflet库添加为应用程序的运行时依赖项,可以运行以下命令:

npm install --save --save-exact leaflet

要从开发中DefinitelyTyped存储库中的 TypeScript 类型定义中受益,您可以运行以下命令:

npm install --save-dev --save-exact @types/leaflet

然后,您将导入库的安装说明中指定的 JS 和 CSS 文件,以便Webpack了解它们: 注意:Leaflet 还有其他要做的事情,我们在这里不做详细介绍。

有关如何使用 JHipster 进行开发的更多说明,请参阅在开发中使用Using JHipster in development

使用 openapi-generator 进行 API-First 优先开发。

为此应用程序配置了OpenAPI-Generator 。 您可以通过运行以下命令从src/main/resources/swagger/api.yml定义文件生成 API 代码:

./mvnw generate-sources

然后用@Service类实现生成的委托类。

要编辑api.yml定义文件,可以使用Swagger-Editor之类的工具。 通过运行以下命令,使用 docker 启动 swagger-editor 的本地实例:docker-compose -f src/main/docker/swagger-editor.yml up -d。 然后可以从http://localhost:7742访问该编辑器。

有关更多详细信息,请参考Doing API-First development

系统构建

打包为 Jar 包

要构建最终的 Jar 包并优化用于生产的 jhipsterSampleApplication 应用程序,请运行:

./mvnw -Pprod clean verify

上面过程中可能会因为测试失败而无法完成,请暂时忽略测试再运行,测试代码正在整理中。:

./mvnw -Pprod clean verify -DskipTests

这将打包和压缩客户端 CSS 和 JavaScript 文件。 它还将修改index.html,以便它引用这些新文件。 为确保一切正常,请运行:

java -jar target/*.jar

然后在浏览器中打开http://localhost:8080

有关更多详细信息,请参阅在生产中使用Using JHipster in production

打包为 War 包

要将应用程序打包为 War 包以将其部署到应用程序服务器,请运行:

./mvnw -Pprod,war clean verify

上面过程中可能会因为测试失败而无法完成,请暂时忽略测试再运行,测试代码正在整理中。

./mvnw -Pprod,war clean verify -DskipTests

测试

要启动应用程序的测试,请运行:

./mvnw verify

前端测试

单元测试由Jest运行。 它们位于src/test/javascript/中,可以与以下命令一起运行:

npm test

有关更多信息,请参阅Running tests page

代码质量

Sonar 用于分析代码质量。 您可以使用以下命令启动本地 Sonar 服务器(可从 http://localhost:9001 访问):

docker-compose -f src/main/docker/sonar.yml up -d

注意:我们在尝试 SonarQube 时已关闭src/main/docker/sonar.yml中的身份验证以提供开箱即用的体验,对于实际用例,请重新打开它。

您可以使用sonar-scanner或使用 maven pluginmaven 插件运行 Sonar 分析。

然后,运行 Sonar 分析:

./mvnw -Pprod clean verify sonar:sonar

如果您需要重新运行 Sonar 阶段,请确保至少指定initialize阶段,因为 Sonar 属性是从 sonar-project.properties 文件加载的。

./mvnw initialize sonar:sonar

有关更多信息,请参阅Code quality page

使用 Docker 简化开发(可选)

您可以使用 Docker 来改善您的 JHipster 开发体验。 src/main/docker文件夹中提供了许多 docker-compose 配置,以启动所需的第三方服务。

例如,要在 Docker 容器中启动 mongodb 数据库,请运行:

docker-compose -f src/main/docker/mongodb.yml up -d

要停止并删除容器,请运行:

docker-compose -f src/main/docker/mongodb.yml down

您还可以对应用程序及其依赖的所有服务进行完全 docker 化。 为此,请首先通过运行以下操作为您的应用构建 docker 映像:

./mvnw -Pprod verify jib:dockerBuild

然后运行:

docker-compose -f src/main/docker/app.yml up -d

有关更多信息,请参阅Using Docker and Docker-Compose,此页面还包含有关 docker-compose 子生成器(jhipster docker-compose)的信息,该子生成器能够为一个或多个 JHipster 应用程序生成 docker 配置。

持续集成(可选)

要为您的项目配置 CI,请运行 ci-cd 子生成器(jhipster ci-cd),这将使您为许多 Continuous Integration 系统生成配置文件。 有关更多信息,请查阅Setting up Continuous Integration页面。

jhipster-pro-sample's People

Contributors

jhipster-bot avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.