Ⅰ 怎么在webstorm上利用babel实现自动编译es6文件
习惯了WebStorm的话..我就假设题主会用Node.js和npm啦~
一句话总结:用WebStorm自带的File Watcher功能+Babel实现自动转换ECMAScript 6代码为ES5代码
我是这么配置的..就先新建一个Empty Project,然后在src目录下新建了一个main.js;
// 这一步不是必须的 只是刚上手的话 从空项目开始自己配置会少很多干扰
Then..进入设置,把javaScript language version改成ECMAScript 6;
再Then..写一段ES6代码
'use strict';
// node直接运行ES6代码时,如使用了ES6的一些关键字,比如let,就需要严格模式,否则会报错
// 这是没有严格模式时候的错误提示
// SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
function* fibs() {// Generator Function
let a = 0;
let b = 1;
while (true) {
yield a;
// [a, b] = [b, a + b];
b = a + b;
a = b - a;
}
}
let [first, second, third, fourth, fifth, sixth] = fibs();
console.log(first, second, third, fourth, fifth, sixth);
现在IDE会出现一个File watcher提示条
先别点Add watcher!我们要先去装babel~
首先在根目录新建一个package.json
{
"name": "test-project",
"version": "1.0.0"
}
然后打开IDE的Terminal,安装babel-cli
npm install --save-dev babel-cli
Good! 现在可以去点Add watcher啦,点完之后会弹出一个框,其中大部分设置IDE都帮你搞定了
下面第三行,Program那一项,填
$ProjectFileDir$/node_moles/.bin/babel
然后点OK,这个时候你就会发现左边多出来一个main-compiled.js文件啦
但是还没搞定!现在只是搞定了自动转换的功能,系统默认把ES6 compile成了ES6..(你应该会发现compile出来的东西跟原来的一样..Generator函数并没有被转换成ES5的格式)
所以我们需要安装Babel的preset以正确识别ES6代码;
和刚才一样,在npm安装babel的ES6的preset
npm install --save-dev babel-preset-es2015
在根目录下新建一个.babelrc文件(就是babel在当前项目的配置文件),写上
{
"presets": [
"es2015"
]
}
OK搞定!保存再回去看一下main-compiled.js 应该就变成这个样子啦,现在你在main.js里直接写ES6代码,IDE都会自动compile成ES5的代码在这里啦~
注意:想直接用Node.js运行ES6代码还是有些问题..因为这段代码用的ES6的解构赋值Node.js还未完全支持,需要在运行的时候加入一些tags(以开启Node.js的相关试验特性),具体可以参考Node.js官网对ES6的说明:ECMAScript 2015 (ES6)。
Ⅱ Eclipse 在按ctrl + s 保存后,会自动编译的功能,是如何实现的
项目-------->自动构建
eclipse自动编译的
Ⅲ myeclipse怎样设置能自动编译javabean
方法如下:
点击菜单-Project-BuildAutomatically,这个取消勾选。BuildAutomatically的意思是自动编译,选择的功能就是,在修改代码保存的时候,就编译了。
点击菜单-Project-BuildAll或BuildProject。
Ⅳ myeclipse能不能自动重新编译已修改的类
你用的myeclipse是集成的tomcat的把,tomcat默认是不能自动更新的。你可以修改tomcat的配置文件server.xml来实现。
方法:修改context元素
context元素:
path:指定访问该Web应用的URL入口。
docBase:指定Web应用的文件路径,可以给定绝对路径,也可以给定相对于Host的appBase属性的相对路径。
reloadable:如果这个属性设为true,Tomcat服务器在运行状态下会监视在WEB/INF/classes和WEB-INF/
lib目录下class文件的改动.如果监测到有class文件被更新,服务器会自动重新加载Web应用。
代码:
你把代码中path,docBase改成你自己的工程路径,这样应该可以实现你要的功能
Ⅳ 基于 devenv 实现自动化编译,生成测试文件
想要实现自动化编译并生产打包替换文件,首要的对项目进行编译生成.一般编译 donnet 项目有三种方式 csc.exe , MSbuild(不需要安装vs) , devenv(需要安装vs).因为自己已经安装了vs了,所以直接使用devenv去编译程序了
大致流程如下
SVN 工具使用TortoiseSVN. 为了简化操这里直接使用 TortoiseProc.exe(TortoiseSVN的GUI程序) 所提供的命令行,对项目进行更新等操作
使用Demo
具体的使用方式可以在 TortoiseSVN 提供帮助文档里去查看
因为项目的日期和版本是写死在了程序里的,每次给测试生产替换文件时候都得去修改程序日期.大致思路是通过正则去修改文件.考虑到需要后面可能需要修改的地方较多,目前是通过Json去配置需要修改文件 和 对应正则 和 调用的方法(获取的值).为了提供修改灵活性,目前是通过 CSharpCodeProvider 去编译 C# 文件,来方便随时修改获取新的值得规则
大致流程如下
json 配置文件如下
假如 Test.cs 文件需要修改内如下
新增一个 Units.cs(用于动态编译) 文件,生成操作改为内容,不参与编译
对 CSharpCodeProvider 进行简单封装,CSharpRunCode 类 主要是对 C# 字符串进行编译,和提供一个可以调用 C# 字符串中方法
使用方法
执行结果
VS 安装的是2017,devenv 正常路径应该是 [C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE] 下,网上一堆动态查找 devenv 路径的方法.最后感觉通过注册表方式比较靠谱, 参考这篇
具体实现
找到了路径后接下来就是,将路径写入环境变量(或者执行 devenv 先调转到目录),调用CMD然后去执行 devenv 程序去编译项目操作了
对调用CMD 简单封装下
devenv 具体参数可以参考 微软官网文档
示例
devenv 回输出,然后判断是否全部编译成功
文件编译好之后,就是对文件的拷贝操作了这里就不描述了
效果如下
Ⅵ 如何实现vc++程序自动化编译
可以自己写个程序来搜索项目文件并执行命令行编译;也可以用批处理实现。
C#也可以用命令行编译。
Ⅶ 如何实现在线自动化编译的功能
#define _STR_CPY 1#if _STR_CPY printf("strCpy\n"); #else printf("strCat\n"); #endif
Ⅷ 怎样使用 MSBuild 自动编译和发布 NET 网站
很多.NET 程序员开发的时候,每次都需要涉及到各个环境的部署问题,但是手工操作的话又容易出错,而且非常麻烦,我们今来讲解怎样实现自动编译和发布 .NET 网站。废话不多讲,先讲讲我的初步实现方案。
MSBuild 自动编译和发布 NET 网站步骤:
准备工具:GIT版本控制(gitlab),Jenkins, msbuild
1、安装git版本控制器,提交代码。(svn好像也可以), 并生成ssh public key上传到gitlab的ssh key中(个人配置/SSH KEY)。
2、安装jenkins开源工具。
3、Jenkins安装git plugin, Msbuild插件(Manager Jenkins/Manage Plugins)
4、配置Jenkins中的git(Manager Jenkins/Configure System)在git栏中输入name和Path: git install path\cmd\git.exe
5、添加对应.NET framework version MSBuild
Name: .NET4.0
Path to MSBuild:
%system%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
6、建立.NET项目文件,并添加MSBuild文件
建立一个解决方案nonsuch.sln,里面包含一个website: nonesuch.web.
在解决方案根目录建立一个xml文件,改名为: build.targets
Ⅸ iOS一键自动编译打包提交
在开始之前先唠叨两句自己对iOS自动化打包的接触,觉得没啥看头滴老铁可以略过直接从第二部分开始。项目自动打包提交的优势不用说了,很高效便捷的东西,很早就接触到了,但是一直没有用到项目中,分析一下主要有以下几个原因:
总结以上原因,一直没有用到自动打包技术。而现在的情况是,
基于以上的情况,所以想自己写一个自动打包的脚本,能够实现 只运行一句命令就自动编译打包发布 ,啥都不要做,挂着就行,打包完自动打开页面提醒。
打包所需要的文件已经挂在 Github 上了。只需要把 BuildTool 文件夹 复制 到 项目主目录 ,注意是复制!不是拖入项目主目录,因为苹果审核有屏蔽fir关键词。然后打开终端, cd 到 BuildTool 文件夹,输入 sh build.sh 命令,回车,开始执行此打包脚本。
具体的使用方法和参数配置 shell脚本 里面已经有非常详细的注释。
有 AppStoreExportOptions.plist 和 AdHocExportOptions.plist 两个plist文件,分别对应发布到AppStore和AdHoc(蒲公英、fir)。简单说一下里面的属性:
写完脚本后,发现已经有老铁对打包脚本做了很详细的分析了: 详解Shell脚本实现iOS自动化编译打包提交 。也有老铁早就写了iOS自动打包的脚本: xcode_shell 。
看了一下,功能也比较全,比如上传包到自己的服务器、上传完成发邮件测试人员。但是现在已经有第三方平台也做到了比这更多的功能,比如蒲公英,还可以手机短信通知测试人员,有专门的页面外链,支持持续集成等。
老铁们如果还有什么建议,欢迎在下面给我留言或私信。🤗 🤗 🤗
问题一(更新于2018年11月14日):
升级 Xcode 10 以上版本,苹果采用新的构建系统,之前的 xcodebuild clean 命令已经无法使用,如果用这个命令的话会报错,苹果给的建议是删除根目录下的 build 目录文件夹,删除就可以完整打包了。但是每次打包都需要再删除一遍,由于这个目录的主要作用就是存储 该项目的历史构建包(Archive归档文件和iPA包) ,所以解决办法是:
参考资料: build_system_release_notes_for_xcode_10