0

不确定这是否是一个错误,但我无法在网上找到任何东西。使用 Grunt、Jekyll 和 Homebrew 的组合来创建我的网站,一切正常。但是一旦我更新到 High Sierra,Jekyll 构建就会失败。

我通常运行 Jekyll build 的方式是通过grunt-shell这样的任务:

grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),


        shell: {
            jekyllBuild: {
                command: 'jekyll build'
            }
        },
       connect: {
            server: {
                options: {
                    hostname: 'localhost',
                    port: 4000,
                    base: '_build'
                }
            }
        },
...
      watch: {           
            jekyll: {
                options: {
                    livereload: true
                },
                files: [
                    '**/*.scss',
                    '**/*.html',
                    '**/*.js', 
                    // The negations must go after
                    '!*node_modules/**',
                    '!*_build/**',
                    '*.md', 
                    '*.yml',   
                    'img/**',
                    ],
                tasks: ['shell:jekyllBuild','postcss']
            }
        }
    });

...

grunt.registerTask('serve', ['shell','connect','watch']);

这给出了以下错误:

Running "shell:jekyllBuild" (shell) task
Configuration file: [URL]/_config.yml
            Source: [URL]
       Destination: _build
 Incremental build: disabled. Enable with --incremental
      Generating... 
jekyll 3.6.0 | Error:  negative argument
Warning: Command failed: jekyll build
 Use --force to continue.

Aborted due to warnings.

除了 Jekyll,我运行的所有其他东西都有效。

我也尝试在jekyll build没有 shell 任务的情况下运行,但仍然出现错误:

jekyll 3.6.0 | Error:  negative argument
Warning: Command failed: jekyll build
 Use --force to continue.

Aborted due to warnings.

我正在使用 Homebrew 将内容保存在本地,并且所有内容似乎都在正确的位置:

~$ which jekyll
/usr/local/bin/jekyll
~$ which ruby
/usr/local/bin/ruby
~$ which grunt
[URL]/.npm-packages/bin/grunt
~$ which gem
/usr/local/bin/gem
~$ which node
/usr/local/bin/node

我意识到,我的设置可能不是最好的,但它正在工作,所以我希望得到一些指导。我不是最初创建这个设置的人,我不是程序员,而是一个网页设计师,他有时可以把东西拼凑在一起,对我自己不利:)

4

1 回答 1

0

该问题最终与操作系统更新无关,而是与导致该问题的自定义 Jekyll 插件有关。删除插件后,一切正常。然而,在 Jekyll 或其他地方确实发生了一些变化,使插件突然无法工作。我将打开一个单独的问题来解决这个问题。感谢@Casper 和@JoostS 的快速回复。

于 2017-09-29T17:23:39.577 回答