0

私はうなり声を出すのはかなり初めてで、それを愛していますが、「エルキャピタン」に移動した後、コンパスでの成功の欠如にかなり不満を感じています. grunt プロジェクト ディレクトリから 'grunt' を実行すると、sass/scss が compass/watch コンボでコンパイルに失敗したことを示す EPERM エラーが表示されます。

sh-3.2# grunt
Running "compass:dev" (compass) task
unchanged img/common/1x-scb9effd9a6.png
unchanged img/common/2x-sd9683d03fa.png
Errno::EPERM on line ["512"] of /Library/Ruby/Gems/2.0.0/gems/sass-3.4.19/lib/sass/plugin/compiler.rb: Operation not permitted - /Applications/MAMP/htdocs/Repos/dev/wp-content/themes/quindodo/_/css/giving.css
Run with --trace to see the full backtrace
Warning: ↑ Use --force to continue.

Grunt ファイルは次のとおりです。

module.exports = function(grunt) {

//All configuration goes here
grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),

    compass: {
        dev: {
            options: {              
                sassDir: 'sass',
                cssDir: 'css',
                fontsDir: 'fonts',
                imagesDir: 'img',
                images: 'img',
                javascriptsDir: 'js/pro',
                //environment: 'development',
                outputStyle: 'compressed',
                relativeAssets: false,
                httpPath: '.',
            }
        },
    },

    watch: {
            compass: {
            files: ['*.{scss,sass}'],
            tasks: ['compass:dev'],
        }

    },
});
// Where we tell Grunt we plan to use this plug-in.
grunt.loadNpmTasks('grunt-contrib-compass');
grunt.loadNpmTasks('grunt-contrib-watch');

// Where we tell Grunt what to do when we type "grunt" into the terminal.
grunt.registerTask('default',['compass','watch']);
};

最後に、私のpackage.json

 {
"name": "quindido",
"version": "0.0.0",
"description": "Quindodo Theme CSS",
"private": true,
"devDependencies": {
 "grunt": "~0.4.5",
 "grunt-contrib-jshint": ">=0.10.0",
 "grunt-contrib-nodeunit": ">=0.4.1",
 "grunt-contrib-sass": ">0.0.1",
 "grunt-contrib-watch": ">0.0.1"
  }
 }

解決策に非常に感謝します。CIPを無効にしてみました。「sudo gem install -n /usr/local/bin compass」と「gem update --system」も試しました。npm とモジュールを正常にアンインストールして再インストールしたと思います。また、devDependencies から「grunt-contrib-compass」を削除しようとしました。

4

1 に答える 1

0

ruby を含むすべてのバイナリ/gem をアンインストールし、パスを /usr/bin から /usr/local/bin に更新することで、この問題を解決しました。元の OS などによっては、パスがさまざまな隠しファイルに含まれている場合があります。パスを更新したら、バイナリを再インストールして、/usr/local/bin からインストールおよび実行されるようにします。次の端末コマンドを利用して、バイナリ/アクティブな Ruby を見つけてみてください。

gem e
ruby version
于 2016-01-08T15:47:41.920 に答える