2010-08-26 7 views
7

Czy możliwe jest skompilowanie aplikacji JS i interpretera NodeJS do jednego pliku wykonywalnego w celu dystrybucji?Czy możliwe jest skompilowanie aplikacji JS + interpretera NodeJS do jednego pliku wykonywalnego?

+0

Check out: http://www.appcelerator.com/ jeśli chcesz rozwijać wykonywalne przy użyciu JS, HTML i CSS. – BGerrissen

+0

Dzięki @BGerrissen, ale tak naprawdę jest to już działająca aplikacja node.js po stronie serwera, którą chcę "bezpiecznie" rozprowadzić na serwerach klienta. –

+0

Nie myśl, że oprzyrządowanie nodejs jest tak daleko, ale niestety. Rozglądałem się i widziałem wiele ręcznych konfiguracji. Wszystkie obejmują instalowanie nodejs, a następnie wdrażanie kodu za pomocą git lub cokolwiek innego. – BGerrissen

Odpowiedz

1

Czy możliwe jest skompilowanie aplikacji JS i interpretera NodeJS do jednego pliku wykonywalnego w celu dystrybucji?

To może wydawać się oczywiste, ale oto moje zdanie na ten temat.

„pojedynczy plik wykonywalny dla dystrybucji” brzmi trochę jak instalatora ...

Instalator powinien zawierać lub być w stanie pobrać w Internecie swoje js skrypty i skompilowany node.js. Rozpakowałoby wszystko i utworzy skrypt w /etc/init.d/, aby uruchomić i zatrzymać serwer.

Jeśli wszyscy twoi klienci są w tej samej dystrybucji (na przykład Debian), po prostu utworzę pakiet odpowiedniego narzędzia do pakowania (np. Apt) i pozwolę, aby narzędzie do pakowania zajmowało się wszystkim.

Wszyscy klienci mają różne dystrybucje, można zajrzeć do autopackage.

6

trzeba Linuksem git i Python, następnie brzydki rozwiązanie:

$ git clone git://github.com/ry/node.git 
$ cd node 
$ vim src/node.js # add your code to end before "process.loop();" 
$ ./configure 
$ make 
$ sudo make install 
$ node 
+1

Naprawdę brzydki. Myślę, że lepiej zastąpić część 'if (process.argv [1]) {... module.runMain()' w 'src/node.js' i załadować kod jako moduł root zamiast wstawiania go dosłownie. Nie testowałem jednak. – user123444555621

+0

pomysł był przewodnik digitala, aby przeczytać kod źródłowy nodejs :) – Lauri

+0

Dobry. +1 za to: D – user123444555621

1

Jeśli twoim celem jest, aby wykonać skrypt, może być w stanie utworzyć prostą C lub C programu otoki ++ który będzie tarła tłumacz i oceń swój JS. Jeśli chcesz mieć pojedynczy plik, źródło js może zostać włączone jako stała łańcuchowa.

Podczas kompilowania programu otoki, chcesz statically link go do węzła i reszty drzewa zależności. Zamiast polegać na współdzielonych bibliotekach w systemie, łączenie statyczne skopiuje procedury zależne od projektu do skompilowanego pliku binarnego.

Jak zrobisz to będzie zależeć od środowiska

Powiązane problemy