可以进行本地云构建吗?

时间:2019-04-07 00:25:38

标签: nativescript

我想在Linux机器上开发NativeScript应用程序,并使用Mac Mini为iOS进行本地构建。这种“本地云”设置可行吗?

1 个答案:

答案 0 :(得分:0)

如Manoj在评论中所指出的那样,在撰写本文时(2019年4月),还没有一个真正的解决方案来实现所述的“本地云”。我向Nativescript团队提交了功能请求,您可以在此处(https://github.com/NativeScript/sidekick-feedback/issues/365)进行查找。

在GitHub Nathanael A.关于该问题的评论中,建议了以下解决方法:

  

@NathanaelA于2019年4月8日星期一发表评论

     

不确定是否适合您;但是我目前的工作方式是在Linux上的phpStorm中做所有事情(用于使用Windows,因此它也可以在Windows中工作)。 phpStorm我已设置为自动同步到Mac上的同一文件夹(通过ssh)。在Mac上,我只是在第一次启动时运行tns。然后在其余时间忽略mac。 phpStorm将使所有内容与Mac保持同步,而Mac将使所有内容与其上的电话/模拟器保持同步。

     

我不知道vscode是否在文件更改插件上具有自动同步功能;但是您可能可以通过监视节点和文件来完成某些事情来完成相同的事情...

更新lsyncd实际上并没有运行,最终我无法使其正常运行。取而代之的是,我使用了inotify-hookable和此命令,它非常有效,而且非常简单:

inotify-hookable -rw /mnt/projects/my-drawer-ng/ -c 'rsync -avr /mnt/projects/my-drawer-ng jhudson@192.168.241.129:/Users/jhudson/Documents/my-drawer-ng/'

它将对目录中的所有文件进行监视,然后在其中任何一个更改时执行传递给-c的命令。

我能够使用lsyncd软件包在Ubuntu 16.04虚拟机和Mac OS X计算机之间成功实现此变通办法。

lsyncd的安装说明可以在https://www.server-world.info/en/note?os=Ubuntu_16.04&p=lsync找到,并复制如下:

root@dlp:~# apt-get -y install lsyncd
root@dlp:~# mkdir /etc/lsyncd 
root@dlp:~# vi /etc/lsyncd/lsyncd.conf.lua
# create new
 settings{
    statusFile = "/tmp/lsyncd.stat",
    statusInterval = 1,
}
sync{
    default.rsync,
    # source directory
    source="/root/work/",
    # destination Hostname or IP address:(the name set in rsyncd.conf)
    target="10.0.0.31::backup",
    # excluding list
    excludeFrom="/etc/rsync_exclude.lst",
}

root@dlp:~# systemctl restart lsyncd 

注意:您需要从lua文件中删除“注释”,并且需要创建文件/etc/rsync_exclude.lst(如果尚不存在)。或者,您可以从配置文件中删除行excludeFrom="..."