2009-11-07 11 views
13

Google właśnie wydała Closure, która jest kompilatorem do minify JavaScript.Jak korzystać z zamknięcia Google do kompilowania JavaScript

Na stronie produktu mówi: "Kompilator zamykania został również zintegrowany z prędkością strony".

Jak używać szybkości strony do kompilowania stron internetowych JavaScript z zamknięciem?

(Albo, czy jest to strona internetowa, że ​​mogę po prostu wkleić w moim JavaScript, aby mieć zamknięcie Minify to?

+0

hej @Ted, chciałbym rozszerzyć pytanie to „Jak skompilować java "również w linii poleceń. – Evgeny

+0

Google jest świetny, ponieważ zazwyczaj udostępnia przewodniki i samouczki dotyczące oprogramowania "programistycznego". Zamknięcie nie jest wyjątkiem. Rozpocznij [tutaj] (http://code.google.com/closure/) i podążaj za odnośnikami do narzędzia, którego chcesz się nauczyć. Następnie przeczytaj i idź dalej. Mają mnóstwo informacji o każdym narzędziu. Cieszyć się! – JasCav

Odpowiedz

0

„Page Speed ​​1.4 Beta integruje Closure Compiler do minify pliki automatycznie JavaScript. Jednak trzeba będzie pobrać i zainstalować Beta Page Speed ​​i Closure Compiler oddzielnie.”

http://code.google.com/speed/page-speed/download.html

nie zainstalowano jeszcze tej wersji, ale jestem prawie pewna, że ​​Page Speed ​​zaprezentuje ci skompilowanego kodu w jego optymalizacji zalecenia:

10

W przypadku pojedynczego pliku to proste

java -jar $path_to_jar/compiler.jar --js input_file.js \ 
      --js_output_file output_file.js 

Dla projektu wielu plików można użyć calcdeps.py w połączeniu z compiler.jar

#!/bin/sh$ 
$CALCDEPS_PATH=/path/to_calcdeps #directory containing calcdeps.py 
$JAR_PATH=/path/to_jar   #directory containing compiler.jar 
$CLOSURE_PATH=/path/to_closure #contains directory "closure" 
$CALCDEPS_PATH/calcdeps.py --path $CLOSURE_PATH \ 
          --path . \ 
          --compiler_jar $JAR_PATH/compiler.jar \ 
          --input main_project_file.js \ 
          --output_mode compiled \ 
          > compiled_project_file.js 

ten sposób kompilator daje sensowne informacje o błędach typ itp Błędy typu type mogą zostać przechwycone podczas kompilacji, ponieważ compiler.jar używa certain JSDoc comments dla informacji o typie.

Dodatkowe flagi kompilatora mogą być przekazywane do calcdeps.py wraz z -f lub --compiler_flags opcji

Jeśli chcesz korzystać z zaawansowanych optymalizacje ustawić

--compiler_flags "--compilation_level=ADVANCED_OPTIMIZATIONS"

zauważy podwójne cudzysłowy i znak równości - musiał użyj tego formatu w bashu

0

Wygląda na to, że Kompilator zamykania jest zintegrowany z Page Speed ​​only for Windows.

0

Jeśli musisz skompilować wiele plików js lub jeśli chcesz, aby uprościć proces kompilacji, możesz użyj kjscompiler: https://github.com/knyga/kjscompiler (w oparciu o kompilator zamykania google)

1

Kompilator zamknięcia jest teraz dostępny jako aplikacja JavaScript. Nie ma już potrzeby zależności Java od

Istnieje kilka sposobów na integrację z nią.Zrobiłem to jako część pakietu zbiorczego

ex:

import rollup from 'rollup'; 
import closure from 'rollup-plugin-closure-compiler-js'; 

export default { 
    entry: 'index.js', 
    dest: 'dist/build.js', 
    format: 'iife', 
    plugins: [ 
    closure({ 
     languageIn: 'ECMASCRIPT6', 
     languageOut: 'ECMASCRIPT5', 
     compilationLevel: 'ADVANCED', 
     warningLevel: 'VERBOSE', 
     externs: [{src:` 
         var jQuery; 
         jQuery.fadeIn = function() {}; 

         var ko; 
         ko.applyBindings = function(vm) {}; 
         ko.computed = function(a,b) {}; 
         ko.observable = function(a) {}; 
       `}], 
    }) 
    ] 
} 

Więcej informacji tutaj:

http://www.syntaxsuccess.com/viewarticle/using-the-closure-compiler---advanced_optimizations

Powiązane problemy