Component-preload.js生成

时间:2017-07-12 15:00:10

标签: javascript node.js gruntjs sapui5

我们即将关闭SAPUI5应用程序,最后一步是制作Component-Preload.js文件以提高性能。我在网上阅读了不同的指南,所有这些指南都需要我安装的Node.js。我不是关于该软件包的专家,我无法确定如何使其中一个指南工作。我正在使用NetBeans进行开发。据我所知,没有官方工具(我是对的吗?)来生成该文件。有没有比我更多经验的人可以建议一个有效的,解释清楚的指南来完成这项任务吗?

我不知道这是否有用,这是我的工作树: Current project's working tree

1 个答案:

答案 0 :(得分:9)

有几种主要方法可以做到这一点。

  1. 您可以使用SAP Web IDE生成它。这假定您使用WebIDE开发应用程序(根据您的问题不是这样)。 WebIDE的常规版本在"客户端构建期间生成此文件"在应用程序部署之前。

  2. "多云" WebIDE的版本可以使用grunt构建来完成它。如果您有兴趣,可以在此处找到更多信息:https://www.sap.com/developer/tutorials/webide-grunt-basic.html

  3. 使用新的UI5命令行工具(https://npmjs.com/package/@ui5/cli):

    • 运行npm i -g @ui5/cli以全局安装工具。
    • 使用终端打开项目的根目录。
    • 运行ui5 build preload以构建预加载。
  4. 使用@sap/grunt-sapui5-bestpractice-build预先配置的grunt任务。缺点是它们是或多或少的黑盒子,不允许那么多的定制。您可以在SAP的GitHub存储库jenkins-pipelines上找到示例设置。简而言之:

    • 您需要定义一个.npmrc文件,该文件会添加 @sap npm注册表:@sap:registry=https://npm.sap.com
    • 运行npm init命令,以便生成package.json文件。此文件描述了您的应用程序和依赖项(运行时依赖项和dev依赖项;您现在只有dev依赖项,因为您只想构建应用程序)。确保将包标记为私有。请参阅npm docu(许可证章节末尾)。
    • 然后您可以安装grunt和构建配置:npm i grunt -Dnpm i @sap/grunt-sapui5-bestpractice-build -D
    • 最后,您需要定义一个简单的Gruntfile(然后您可以通过运行grunt来运行构建):
  5. 
    
    module.exports = function (grunt) {
        'use strict';
        grunt.loadNpmTasks('@sap/grunt-sapui5-bestpractice-build');
    
        grunt.registerTask('default', [
            'lint',
            'clean',
            'build'
        ]);
    };
    
    
    

    1. 您可以使用官方grunt_openui5插件生成预加载文件。为了能够执行此操作,您需要安装节点:

      • 创建 package.json (例如通过npm init)。
      • 通过在控制台中写入来安装grunt:npm install grunt-cli --save-dev
      • 安装官方openui5 grunt插件:npm install grunt-openui5 --save-dev
      • 现在你拥有了所有必要的工具,你只需要告诉咕噜咕噜它必须做什么。您应该在项目的根目录中创建Gruntfile.js。在这个文件中你应该配置grunt openui5任务,如官方github页面(我在上面链接)中所述。您可以找到类似的文件here(它有更多的构建步骤,如缩小和将结果文件复制到一个单独的目录中)。
      • 然后,您只需在控制台中运行grunt <task_name>即可运行grunt构建。如果您将构建任务注册为grunt默认任务(如示例文件中所示:grunt.registerTask('default', [...]);),则只需编写grunt即可。
      • 我认为你应该能够在IDE中集成这样一个命令行脚本(即运行gruntan external tool
    2. 您可以使用非官方gulp-openui5工具生成它。如果您尚未使用gulp进行构建(因为它不是SAP构建的工具),我不建议这样做。程序是一样的,但使用gulp来构建应用程序而不是grunt(所以你需要安装节点,npm init,安装gulp,创建Gulp文件等)。
    3. 请注意,对于上述大多数方法,您需要nodejs,您可以从此处下载和安装:https://nodejs.org/en/download/