在windows系统中搭建superset开发环境

我只说一句废话,垃圾windows。
下面进入正文。


想从源码构建superset项目的话需要下面几部。
1.去github下载源码。2种方式:

  • 第一种:使用git命令,建个项目目录(推荐使用虚拟环境virtualenv),然后cd 到项目目录,执行git clone https://github.com/apache/incubator-superset.git
  • 第二种:直接下载zip文件,下载好了然后解压即可。如图:


    image.png

2.创建本地开发环境
首先保证你的python版本为2.7或者3.4(推荐2.7),已经安装好了pip。
比如你的项目根目录为d:superset_venv。

pip install superset

此时你有很大概率会失败,因为windows系统默认没有vc++9.0环境,所以你需要按照dos命令窗口给出的提示去下载。
下载下来的文件是一个msi文件,直接运行即可,无脑下一步,然后结束。此时此刻你的windows系统已经拥有了vc++9.0的环境。

再次运行pip install superset,这次所有的依赖包应该都被pip装好了。

把你下载好的代码放到这个项目根目录中。如图:


image.png

然后回到命令行里,回到 superset/assets目录下,我们下面需要根据package.json编译前端依赖项。
就执行两条命令:

yarn

yarn run build

你会发现又报错了,什么NODE_ENV不识别?没错,因为windows不支持多条命令一起执行,所以你需要修改package.json文件。

现在用pycharm打开你的源码文件,就是刚刚你拖到虚拟环境目录的那个文件夹(incubator-superset-master)。
package.json文件在incubator-superset-master/superset/assets目录下,双击打开。
然后找到scripts项,修改里面的build,改成如图所示的样子。因为你运行的是yarn run build,这将会启动编译,在assets目录下生成node_modules文件夹。如果你要使用开发模式,那就修改dev。原理同build。


image.png

改完了之后记得ctrl+s保存!!!

然后再次执行yarn run build命令,这次应该就不会报错了。到此为止,前端编译通过。剩下的就是后端的编译了。

现在回到项目的根目录,incubator-superset-master。


image.png

然后执行命令,python setup.py install。


image.png

不出意外的话你还会报错,因为incubator-superset-master/superset/static目录下只有一个assets链接,非常恶心的是这个链接在windows中无效,我们需要自己创建链接,把static链接到assets目录上。
现在打开incubator-superset-master/superset/static目录,删除里面的assets文件夹。


image.png

然后再次回到命令行,cd 到incubator-superset-master/superset/static目录,执行创建链接的命令mklink assets ..\assets


image.png

然后你会发现你的incubator-superset-master/superset/static目录又有了一个叫assets的文件夹。没错,它就是superset/assets目录的链接。

然后配置pycharm的启动项。如图:
在你的pycharm右上角打开配置。


image.png

没想启动项需要自己创建一个,点击加号,选择python。


image.png

顺便说一句,如果你在选择python interpretor的时候没有你虚拟环境中的解释器,需要打开pycharm的设置。


image.png

image.png

一顿操作之后,回到刚才配置启动项的界面里就有虚拟环境中的解释器了。

然后点击apply,ok,保存。
到此为止,我们的windows系统下的superset环境就搭建好了。

在console中看到这些提示就说明环境已经没问题了。如图:


image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,891评论 18 139
  • 先讲几个小故事 故事一。 有天晚上,我还在为公众号推文忙前忙后,有个原来媒体的前同事突然微信敲我私聊。简单寒暄之后...
    穷尽相引阅读 355评论 0 1
  • 你以为贷款只要有体面的工作和稳定的收入,搞清楚公积金贷款和商业贷款的区别就OK了?如果你这样想,就大错特错了。不说...
    中亿行阅读 266评论 0 0
  • 补肾养肝-枸杞泡菊花 肝肾不好的人,容易感到疲劳,并且双眼会发干,用枸杞泡菊花,早晚各一杯,连续喝一周,能有效排出...
    張蕾馥阅读 394评论 0 0
  • 如,其实就是真实,真实就是不可摧毁恒常不变却能大用现前,就像虚空能现万物丰富多姿其性不动。不为风雨雷电而摇动、不为...
    本乘阅读 899评论 0 0