4

私はMacOSX 10.7.5を使用しており、Gruntを使用していくつかのjsファイルを連結し、それらを縮小しています。ここで、cssファイルも縮小したいと思います。gruntは機能を提供しないので、そのためのgruntプラグインをインストールしたかったのです。指示に従って、プロジェクトのルートフォルダーにCDを挿入し、npmを使用してプラグインをインストールする必要があります。だから私は次のことをしました:

cd <PROJECT_ROOT>
npm install grunt-contrib-css

プラグインの手順は次のとおりです。https : //npmjs.org/package/grunt-contrib-mincss grunt.jsファイルを開いて、追加しました

grunt.loadNpmTasks('grunt-contrib-mincss');

しかし、私がうなり声を上げようとすると、私はただ得ます

Local Npm module "grunt-contrib-mincss" not found. Is it installed?
<WARN> Task "mincss" not found. Use --force to continue. </WARN>

インストールは問題なく機能し、npmlsはモジュールを一覧表示します。

私が間違ったことをしたアイデアはありますか?どうもありがとう!

更新しました

私がそのようなプロジェクトにCDを入れるとき

cd ~/Sites/path/to/project

プラグインをインストールします

sudo npm install grunt-contrib-mincss

モジュールは実際ににインストールされています

~/node_modules/grunt-contrib-mincss

ファイルをプロジェクトのルートディレクトリ(これは機能します)にハードコピーすることはできますが、それはちょっと奇妙なことではありませんか?

UPDATE 2 ノードを更新して、再試行しました。以下はコンソール出力です。

me:~ Fritz$ node -v
v0.8.10
me:~ Fritz$ npm -v
1.1.62
me:~ Fritz$ mkdir ./Sites/npm-test
me:~ Fritz$ cd ./Sites/npm-test/
me:npm-test Fritz$ sudo npm install grunt-contrib-mincss
Password:
npm http GET https://registry.npmjs.org/grunt-contrib-mincss
npm http 304 https://registry.npmjs.org/grunt-contrib-mincss
npm http GET https://registry.npmjs.org/gzip-js
npm http GET https://registry.npmjs.org/clean-css
npm http GET https://registry.npmjs.org/grunt-contrib-lib
npm http 304 https://registry.npmjs.org/gzip-js
npm http 304 https://registry.npmjs.org/clean-css
npm http 304 https://registry.npmjs.org/grunt-contrib-lib
npm http GET https://registry.npmjs.org/crc32
npm http GET https://registry.npmjs.org/deflate-js
npm http GET https://registry.npmjs.org/optimist
npm http 304 https://registry.npmjs.org/deflate-js
npm http 304 https://registry.npmjs.org/crc32
npm http 304 https://registry.npmjs.org/optimist
npm http GET https://registry.npmjs.org/wordwrap
npm http 304 https://registry.npmjs.org/wordwrap
grunt-contrib-mincss@0.3.0 ../../node_modules/grunt-contrib-mincss
├── grunt-contrib-lib@0.3.0
├── gzip-js@0.3.1 (crc32@0.2.2, deflate-js@0.2.2)
└── clean-css@0.4.2 (optimist@0.3.4)

プラグインが外部にインストールされているのはなぜですか?または、それがインストールされている実際の場所を定義する方法はありますか?

4

5 に答える 5

4

モジュールのUbuntu12.04でも同様の問題が発生しましたgrunt-jasmine-task(上記と同じエラーメッセージ)。これで問題は解決しました。

  1. node_modulesプロジェクトのルートにフォルダを手動で作成します。
  2. もう一度実行npm install grunt-jasmine-taskします。
于 2012-12-19T21:31:57.960 に答える
3

このインストール方法は私のために働いた:

  1. cd <PROJECT_ROOT>
  2. を実行しますnpm install grunt-contrib-mincss
  3. 次のテスト内容を含むテストファイルを現在のディレクトリに作成しました。

    module.exports = function(grunt) {
    
        grunt.initConfig({
            mincss: {
                compress: {
                    files: {
                        "path/to/output.css": ["path/to/input_one.css", "path/to/input_two.css"]
                    }
                }
            }
        });
    
        grunt.loadNpmTasks('grunt-contrib-mincss');
    
        grunt.registerTask('default', 'mincss');
    
    };
    
  4. 私のディレクトリ構造は現時点では次のようになっています(これを確認してください。一部のファイルがそこにないか、他のフォルダにある場合は、それが機能しない理由である可能性があります):

    <PROJECT_ROOT> /
        node_modules /
            grunt-contrib-mincss/
        grunt.js
    
  5. ターミナルで実行gruntします。

スクリプトが機能しました。

あなたのケースでそれが機能しなかった考えられる理由:

  1. プラグインをグローバルにインストールしました(-g引数を使用)。
  2. いくつかのサブフォルダーにインストールしました(grunt.jsとnode_modulesは同じフォルダーにある必要があります)。

これをチェックしてください。

于 2012-09-26T11:21:37.860 に答える
1

ファイルが存在しないpackage.jsonためにモジュールがグローバルにインストールされる場合があります。自分のマシンではなかったので、その時点で実行されていたバージョンがわかりません。

次回npm initは、モジュールをインストールする前に実行してみてください。その後、を使用npm install grunt-contrib-css --saveしてインストールし、ファイルに追加しますpackage.json--save-devdevDependenciesに追加するために使用することもできます。

于 2013-06-21T21:31:00.763 に答える
0

私の場合、追加するのを忘れました:

grunt.loadNpmTasks('grunt-jsdoc-plugin');

grunt.jsに変換するため、次のようになります。

module.exports = function(grunt) {

  // Project configuration.
  grunt.initConfig({

    jsdoc : {
      dist : {
        src: ['frontend/js/**/*.js'], 
        dest: 'docs/frontend'
      }
    }

  });

  grunt.loadNpmTasks('grunt-jsdoc-plugin');

};
于 2013-01-05T12:12:48.953 に答える
0

grunt-contrib-mincssフォルダーの下を見ると、readmeファイルがあり、名前がgrunt-contrib-mincssからgrunt-contrib-cssminに変更されます

とにかく、それはあなたの(そして私の)せいではありません。XD

于 2014-07-27T14:30:53.867 に答える