Jeremy Leys
Jeremy Leys

Reputation: 131

/node_modules/jpegtran-bin/vendor/jpegtran: Syntax error: "(" unexpected in file

My grunt file is running successfully locally on my MacBook pro but not on my Ubuntu Plesk server, not sure what is wrong. Thank you so much for your help.

I have commented out one section that references a giant image library and attached a small images directory in dropbox images.tar.gz

images.tar.gz

to unzip in terminal:

tar -zxvf images.tar.gz

How to remove annoying ._ files generated by OSX:

root@vs1:/images# find . -iname '._*' -exec rm -rf {} \;

I get the following error message:

Running "imagemin:dynamic" (imagemin) task Warning: Error: Error: write EPIPE/var/www/vhosts/staging.specialistreferrals.co.nz/httpdocs/node_modules/jpegtran-bin/vendor/jpegtran: 1: /var/www/vhosts/staging.specialistreferrals.co.nz/httpdocs/node_modules/jpegtran-bin/vendor/jpegtran: Syntax error: "(" unexpected in file images/CM_logo.jpg Use --force to continue.

Have also tried getting the latest version of grunt-contrib-imagemin.

For that I did

npm uninstall --save-dev grunt-contrib-imagemin

and then

npm install --save-dev grunt-contrib-imagemin

Grunt file code:

module.exports = function(grunt) {

// Project configuration.
grunt.initConfig({

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

// minifying .js files
uglify: {
  my_target: {
    files: [{
      // javascript folder
      expand: true,
      cwd: 'js/',
      src: ['*.js'],
      dest: 'js/js_opt/',
      ext: '.min.js'
    },
    {
      // slimbox folder
      src: ['slimbox-2.05/js/slimbox2.js'],
      dest: 'slimbox-2.05/js/slimbox2.min.js'
    }]
  }
},

imagemin: {
  dynamic: {
    files: [{
      expand: true,
      cwd: 'images/',
      src: ['*.{jpg,png,gif}'],
      dest: 'images_opt/'
//        },
//      {
//          expand: true,
//          cwd: 'SR_images/',
//          src: ['*.{jpg,png,gif}'],
//          dest: 'SR_images_opt/'
    }]
  }
},


cssmin: {
  target: {
    files: [{
      // css folder
      expand: true,
      cwd: 'css/',
      src: ['*.css', '!*.min.css'],
      dest: 'css/css_opt/',
      ext: '.min.css'
    },
    {
      // jquery folder
      expand: true,
      cwd: 'js/jquery-1.10.4/',
      src: ['*.css', '!*.min.css'],
      dest: 'js/jquery-1.10.4/',
      ext: '.min.css'        
    },
    {
      // slimbox folder
      expand: true,
      cwd: 'slimbox-2.05/css/',
      src: ['*.css'],
      dest: 'slimbox-2.05/css/',
      ext: '.min.css'
    },
    {
      // fancybox folder
      expand: true,
      cwd: 'js/fancybox/source/',
      src: ['*.css'],
      dest: 'js/fancybox/source/',
      ext: '.min.css'
    }],
  }
},

watch: {
  scripts: {
    files: 'js/*.js',
    tasks: ['uglify'],
  },

  images: {
    files: ['images/*.{jpg,png,gif}'],
    tasks: ['imagemin'],
  },

  css: {
    files: 'css/*.css',
    tasks: ['cssmin'],
  }
}

});

// Load the plugin that provides the "uglify" task.
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-cssmin');
grunt.loadNpmTasks('grunt-contrib-imagemin');
grunt.loadNpmTasks('grunt-contrib-watch');

// Default task(s).
grunt.registerTask('default', ['uglify', 'imagemin', 'cssmin', 'watch']);

};

Upvotes: 2

Views: 2273

Answers (1)

Jeremy Leys
Jeremy Leys

Reputation: 131

Fixed by uninstalling node and then using the chris-lea/node.js repository instead

$ cd /
$ sudo apt-get remove nodejs

Install nodejs, npm, and grunt-cli

$ sudo add-apt-repository ppa:chris-lea/node.js 
$ sudo apt-get update 
$ sudo apt-get install nodejs 
$ sudo npm install -g grunt-cli 

Install grunt in your project directory

$ cd ~/myproject 
$ echo "{}" > package.json 
$ npm install grunt --save-dev 

Verify grunt is installed

$ nodejs --version 
v0.10.33
$ npm --version 
1.4.28
$ grunt --version 
grunt-cli v0.1.13
grunt v0.4.5

Run a simple grunt task

$ cd ~/myproject

Create a package.json file:

{
  "name": "SR",
  "version": "0.1.0",
  "devDependencies": {
  "grunt": "^0.4.5",
  "grunt-contrib-cssmin": "^0.14.0",
  "grunt-contrib-imagemin": "^0.9.4",
  "grunt-contrib-jshint": "~0.10.0",
  "grunt-contrib-nodeunit": "~0.4.1",
  "grunt-contrib-sass": "^0.9.2",
  "grunt-contrib-uglify": "~0.5.0",
  "grunt-contrib-watch": "^0.6.1"
  }
}

Upvotes: 0

Related Questions