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 ...
随机推荐
- Oracle connect resource权限
connect resource权限:grant connect,resource to user;后用户包括的权限:CONNECT角色: --是授予最终用户的典型权利,最基本的ALTER SESSI ...
- [DL] 基于theano.tensor.dot的逻辑回归代码中的SGD部分的疑问探幽
在Hinton的教程中, 使用Python的theano库搭建的CNN是其中重要一环, 而其中的所谓的SGD - stochastic gradient descend算法又是如何实现的呢? 看下面源 ...
- tomcat源码阅读之StandardHost和StandardEngine
StandardHost及UML类图: 1.StandardHost类是Host接口的默认实现:其继承自ContainerBase类,说明他也是一个容器类,既然是容器类,那肯定也有管道对象PipeLi ...
- position:relative与position:absolute 区别
relative:相对于它本身原来的位置进行偏移(配合 right left bottom top属性进行偏移) 他偏移会空出来一些空白 其余的html元素不会填充这些空白 absolute:相对于同 ...
- ZedGraph控件的使用
http://blog.chinaunix.net/uid-20776117-id-1847015.html 在我们编写程序的时候,有时候是要做一些统计的,为了达到一目了然的效果,饼状图,曲线图,柱状 ...
- php设计模式之职责链模式
<?php /** * @desc php设计模式之职责链模式(责任链模式) 定义:顾名思义,责任链模式为请求创建了一个接收者对象的链.这种模式给予请求的类型,对请求的发送者和接收者进行解耦.这 ...
- Hibernate对substring和cast的支持问题
http://blog.sina.com.cn/s/blog_8acd9e4b0102uwev.html Hibernate对substring和cast的支持问题 问题:要比较日期的范围...这是只 ...
- 知识点查缺补漏贴01-进程间通讯之mmap文件共享
引文: 个人名言:“同一条河里淹死两次的人,是傻子,淹死三次及三次以上的人是超人”.经历过上次悲催的面试,决定沉下心来,好好的补充一下基础知识点.本文是这一系列第一篇:进程间通讯之mmap. 一.概念 ...
- ThinkJava-访问权限控制
6.2.3 private: 你无法访问 关键字private的意思是,除了包含该成员的类之外,其他任何类都无法访问这个成员.由 于处于同一个包内的其他类是不可以访问private成员的,因此这等于说 ...
- poj 3253 Fence Repair (贪心,优先队列)
Description Farmer John wants to repair a small length of the fence around the pasture. He measures ...