对于macOS上的非GUI脚本,请使用JavaScriptCore.framework(jsc)而不是Node.js

对于macOS上的非GUI脚本,请使用JavaScriptCore.framework(jsc)而不是Node.js,javascript,node.js,macos,javascriptcore,Javascript,Node.js,Macos,Javascriptcore,TL;博士 是一种在JavaScriptCore.framework(jsc可执行文件)中使用macOS的本地javascript解释器运行Node.js脚本的方法 长: 我愿意编写和分享一个小工具,自动缩小和压缩网站项目中基于文本的文件,缩小部分使用svgo、uglifyJS2、cssclean和csso,压缩部分使用zopfli和brotli Svgo、uglifyJS2、cssclean和csso都是Node.js脚本。在最初的研究中,我偶然发现了几个项目,它们要么将node.js脚本编

TL;博士

是一种在JavaScriptCore.framework(jsc可执行文件)中使用macOS的本地javascript解释器运行Node.js脚本的方法


长:

我愿意编写和分享一个小工具,自动缩小和压缩网站项目中基于文本的文件,缩小部分使用svgo、uglifyJS2、cssclean和csso,压缩部分使用zopfli和brotli

Svgo、uglifyJS2、cssclean和csso都是Node.js脚本。在最初的研究中,我偶然发现了几个项目,它们要么将node.js脚本编译成可执行文件,要么使用基于webkit的浏览器框架重新打包。但所有这些项目还包括一个特定的html/css呈现引擎,以支持GUI的使用。因此,它们为最终文件大小增加了大量开销(~60-75mb)


由于svgo、uglifyJS2、cssclean和csso脚本不需要GUI,我想知道是否有办法使用JavaScriptCore.framework(jsc可执行文件)中macOS的本地javascript解释器来运行Node.js脚本。

您可以从命令行运行任何Node.js脚本。在开头添加一个shebang:
#/usr/bin/env节点
–然后使用
chmod
使文件可执行。这对您有帮助吗?据我所知,JSC的运行时与Node.js完全不同(如果它甚至有运行时的话),所以我认为这将很困难。@PatrickHund目标计算机可能没有安装Node.js。所以我想让一切尽可能“可移植”,而不必依赖于外部依赖。如果可能,所有需要的命令行工具和脚本文件都打包并分发到同一个应用程序包中。