10

watch で livereload を使おうとしています。「致命的なエラー: ポート 35279 は既に別のプロセスで使用されています」というメッセージが表示され続けます。livereload のポートを変更しましたが、何もリロードしません。

module.exports = function(grunt) {
grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    compass: {
      dist: {
        options: {
          cssDir: 'stylesheets',
          sassDir: 'stylesheets/sass/',
          imagesDir: 'images',
          javascriptsDir: 'scripts',
          require: ['sass-globbing','modular-scale'],
          force: true
        }
      }
    },
    cssmin: {
      minify: {
        expand: true,
        cwd: 'stylesheets',
        src: ['*.css', '!*.min.css'],
        dest: 'stylesheets',
        ext: '.min.css'
      }
    },
    watch: {
        options: {
            livereload: true
        },
        sass: {
            files: 'stylesheets/sass/*.scss',
            tasks: ['compass']
        },
        css: {
            files: 'stylesheets/*.css',
            tasks: ['cssmin']
        },
        html: {
            files: ['index.html','**/*.css']
        }
    }
});
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-compass');
grunt.loadNpmTasks('grunt-contrib-cssmin');
grunt.registerTask('default',['compass','watch']);

}

4

5 に答える 5

3

Sublime Text と LiveReload パッケージを使用していますか? この問題を引き起こすことが知られています。その場合は、Sublime Text でパッケージを無効にするか、アンインストールしてください。

于 2013-10-29T22:03:04.933 に答える
1

ポートを使用してプロセスを終了する場合は、次の操作を実行できます。

$ lsof -n -i4TCP:35729
COMMAND   PID      USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
node    15723  testuser   24u  IPv6 0x71823b3990749ea5      0t0  TCP *:35729 (LISTEN)

これで、アクセスしようとしているポートでリッスンしているプロセスの PID が得られたので、これを kill できます

$ kill -9 15723

そして今、実行grunt中は問題なく動作するはずです:)

于 2015-12-02T20:57:54.703 に答える