UI5-文档-2.4-Node.js-Based开发环境
用于修改OpenUI5。环境是基于Node.js,用作服务器,具有一个基于Grunt的构建过程。本节提供关于初始设置、开发工作流和测试执行的信息。
常规开发过程:
不需要构建过程,您可以简单地修改任何源文件并重新加载浏览器。
这种无构建的开发过程不能提供优化的运行时性能(例如,有许多小请求,远程连接不能接受)。
适用的机制主要有两种:
▪Git存储库路径包含一个与各自的控制库(例如sap.m)同名的文件夹,在运行时省略该文件夹。Node.js-based服务器被配置为映射位置。
▪在CSS文件被修改后的第一个请求期间,较少的预处理器对CSS文件(服务器端)进行转换。这包括用于从右到左支持的镜像。在CSS修改之后,第一个请求是到相应的库。css文件将花费几百毫秒,这取决于所涉及的css的数量。这是更少的处理时间。
构建SAPUI5:
Grunt用于构建SAPUI5的生产版本。构建结果位于目录target/openui5中。
Usage:grunt build
还可以选择只构建选定的库,或者跳过复制test-resources文件夹。
构建过程负责以下任务:
▪创建绑定库library.css和library-RTL.css所有可用主题的css文件
▪缩小的CSS
▪JavaScript的缩小(for library-preload.json files)
▪将库的JavaScript模块合并到单个库中library-preload.json文件
将最重要的SAPUI5 core文件合并到sap-ui-core.js(尚未优化;缩小了)
请注意:如果遇到如下错误,请重新执行npm安装命令。可能需要先下载一些新的构建工具。
jit-grunt: Plugin for the "replace" task not found. If you have installed the plugin already, please setting the static mapping. See https://github.com/shootaroo/jit-grunt#static-mappings Warning: Task "replace:target" not found. Use --force to continue.
Installing the Node.js-Based Development Environment
本节内容:
1.Installing the Node.js -Based Development Environment
Node.js的安装步骤:
a. 从http://nodejs.org下载Node.js并安装。
请注意:安装包括节点包管理器(npm)。
b. 在操作系统设置或命令行中设置环境变量。如果你使用HTTP代理,你需要这样做:
@SET HTTP_PROXY=http://proxy:8080 @SET HTTPS_PROXY=http://proxy:8080 @SET FTP_PROXY=http://proxy:8080 @SET NO_PROXY=localhost,127.0.0.1,.mycompany.corp
c. 使用以下命令全局安装Grunt命令行接口(Grunt -cli):npm install grunt-cli -g.
请注意:上面显示的示例用于Windows命令行,您可能需要根据您的特定代理配置来调整设置。
d. 下载并安装Git:http://git-scm.com/download.
e. 使用以下命令克隆Git存储库 :git clone https://github.com/SAP/openui5.git.
f. 在本地安装所有npm依赖项。在openui5目录下执行如下命令:
cd openui5 npm install
请注意:有多种配置选项可供您使用。例如,您可以指定参数port=9090来使用不同的HTTP端口。
g. 启动服务器: with grunt serve.
h. 将浏览器指向SAPUI5运行的服务器:http://localhost:8080/testsuite/。
2.Testing SAPUI5
使用ESLint或单元测试测试您的开发。
运行静态代码检查(ESLint)
所有SAPUI5代码必须符合使用ESLint工具检查的特定规则集(有关详细信息,请参阅相关信息)。
要运行ESLint检查,导航到存储库的根目录并执行:
grunt lint
运行单元测试还可以选择只检查所选的库,甚至只检查单个文件或目录。
SAPUI5单元测试使用jQuery的qUnit测试框架实现,并由一个基于硒的基础设施运行。
要执行单元测试,导航到存储库的根目录并执行:
grunt test
您可以通过指定以下参数来更改此默认行为:警告:默认情况下,此命令将为谷歌Chrome浏览器中的所有库运行测试。对于除Mozilla Firefox之外的所有浏览器,都需要安装额外的Selenium web驱动程序。
grunt test --browsers="safari,firefox" # run tests of all libraries on Safari and Firefox
相关信息:http://eslint.org
3.Common Installation Issues
使用节点时可能遇到的常见安装问题。基于js的开发环境,更新构建工具(任务“replace:target”未找到)。
如果遇到如下错误,请再次执行npm install命令:可能需要先下载新的构建工具。
jit-grunt: Plugin for the "replace" task not found. If you have installed the plugin already, please setting the static mapping. See https://github.com/shootaroo/jit-grunt#static-mappings Warning: Task "replace:target" not found. Use --force to continue.
grunt test将下载selenium-server-standalone.jar服务器。当第一次运行jar文件时。如果您在代理后工作,并且没有为代理设置环境变量,那么第一次运行时将失败。
代理问题:
selenium-server-standalone.jar not found. Downloading... >> Error: getaddrinfo ENOTFOUND
"Browser not found" issues要解决这个问题,请为代理服务器设置环境变量。更多信息请查看Installing the Node.js-Based Development Environment.
Selenium需要在路径上找到浏览器的可执行文件,否则您将看到以下错误消息:
firefox Fatal error: Cannot find firefox binary in PATH. Make sure firefox is installed.
要解决此问题,请将Firefox安装文件夹添加到PATH环境变量。
"Path to the driver executable" issues with browsers other than Mozilla Firefox
如果您遇到以下错误,请记住您需要为除Mozilla Firefox之外的所有浏览器安装额外的Selenium Web驱动程序:
Fatal error: The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see http://code.google.com/p/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://chromedriver.storage.googleapis.com/index.html
要解决这个问题,请下载相应浏览器的Selenium驱动程序,并确保Selenium Web驱动程序找到它。有关特定的浏览器说明,请参见下表。
|
Browser |
Details |
|
Google Chrome |
|
|
Internet Explorer (browser type "ie") |
Download the driver from the following location: http://selenium-release.storage.googleapis.com/index.html Note You may have to adjust the Protected Mode settings on the Security tab under Internet options. |
|
Other browsers |
Consult their respective driver documentation. |
Undeletable folders
如果您遇到由于进程锁定而无法删除的源文件夹,一个可能的原因可能是谷歌Chrome或Internet Explorer web驱动程序。检查它们是否处于活动进程中。
UI5-文档-2.4-Node.js-Based开发环境的更多相关文章
- node.js之开发环境搭建
一.安装linux系统 (已安装linux可跳此步骤) 虚拟机推荐选择:VirtualBox 或者 Vmware (专业版永久激活码:5A02H-AU243-TZJ49-GTC7K-3C61N) 我这 ...
- Ubuntu 14.04下搭建Node.js的开发环境
最近想找一个轻量级且支持快速开发的服务开发平台,选来选去选择了Node.js,当时有几种选择: Python + Django(用过Django,虽然开发快速,但是感觉性能并不太好). Ruby + ...
- 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记
近期想尝试一下英特尔的基于WebRTC协同通信开发套件,所以须要在本地搭建Node.js Web的开发測试环境. 这里讲的是CentOS 下的搭建方法.使用Windows的小伙伴请參考: <No ...
- 如何用Docker建立一个Node.js的开发环境
建立一个文件夹 用管理员身份打开powershell. 在文件夹下面运行npm init, 根据提示填入信息,以便产生一个package.json文件. 在文件中加入需要的dependencies ...
- 部署node.js的开发环境
1.进入Node.js的官方网站下载安装包: http:nodejs.org 2.安装后打开cmd的dos窗口(在path环境变量中查看到有nodejs说明安装成功): 3.运行node.
- 搭建Node.js Redis开发环境
创建项目 初始化为node项目 $npm init 安装redis 安装@types/node, @types/redis, typescript 初始化TypeScript 配置ts ...
- Windows 7下Node.js Web开发环境搭建笔记
Node.js是什么? 我们看看百科里怎么说的?JavaScript是一种运行在浏览器的脚本,它简单,轻巧,易于编辑,这种脚本通常用于浏览器的前端编程,但是一位开发者Ryan有一天发现这种前端式的脚本 ...
- node.js vue开发环境搭建
开发工具安装 1.安装node.js 双击安装程序 node-v8.9.3-x64.msi,进行安装即可 2.设置taobao镜像 npm config set registry https://re ...
- 【技术文档】jeecg3.7-maven搭建好开发环境入门
JEECG 微云高速开发平台(3.7)Maven版本号手把手入门手冊 官方标准开发工具:1.IDE Eclipse Java EE IDE for Web Developers. ...
- Aspose.Words:如何添加另一个WORD文档中的Node对象
原文:Aspose.Words:如何添加另一个WORD文档中的Node对象 首先看一段代码,这段代码意图从docSource中获取第一个表格,并插入docTarget的末尾: , true); doc ...
随机推荐
- Git的一些基本操作和命令
1.创建版本库 在D盘中打开Git Bash Here 1.1.创建一个空目录 Mkdir gitDemo –创建一个目录 Cd gitDemo --进入gitDemo目录 Pwd –查看当前目录的 ...
- python版 google密码认证器
#!/usr/bin/env python # -*- coding:utf-8 -*- import hmac, base64, struct, hashlib, time def calGoogl ...
- PHP版本VC6与VC9/VC11/VC14、Thread Safe与None-Thread Safe等的区别
最近正好在弄一个PHP的程序,在这之前一直没有怎么以接触,发现对PHP版本知识了解不是很清楚,自己看了不少类似的文章,还是感觉不够明确和全面, 网上的结论又都是模棱两可,在此,给出最完整甚至武断的解释 ...
- MVC框架请求处理
为开发团队选择一款优秀的MVC框架是件难事儿,在众多可行的方案中决择需要很高的经验和水平.你的一个决定会影响团队未来的几年.要考虑方面太多: 简单易用,以提高开发效率.使小部分的精力在框架上,大部分的 ...
- STL查找序列中处于某一大小范围内的元素个数
还是头条的笔试题(咦?),问题最后转换成这样的形式: 输入:不包含重复元素的有序数组a[N]以及上下界low, high; 输出:数组a[N]中满足元素处于闭区间[low,high]内(即low &l ...
- C/C++基础----泛型算法
算法不依赖与容器(使用迭代器),但大多数依赖于元素类型.如find需要==运算符,其他算法可能要求支持<运算符. 算法永远不会执行容器的操作,永远不会改变底层容器的大小(添加或删除元素). ac ...
- bzoj 1390: [Ceoi2008]Fence
Description 在一个大小为1000*1000的区域中,有n个固定点,m棵tree . 现在你要建一个围栏来保护tree,建它的费用为你选用的固定点的个数 *20和 你没有圈进围栏的tree* ...
- s3express截图安装教程
1.安装s3express_setup.exe 2.设置s3express 设置服务器地址setopt -endpoint:s3.cn-north-1.amazonaws.com.cn 设置协议set ...
- centos7 设置系统时间与网络同步
1.安装ntpdate工具 yum -y install ntp ntpdate 2.设置系统时间与网络时间同步 ntpdate cn.pool.ntp.org 3.将系统时间写入硬件时间 hwclo ...
- 使用nproxy代理本地服务到内网
前端开发中:很多场景需要在局域网下的其他手机或设备查看网页, 问题来了, web服务部署在本机的某个端口上(8080),只能通过本机浏览器访问, 怎样能让局域网下的其他设备也访问呢?可能你会说 关闭 ...