Czy jest sposób na kompilację węzła.pliki źródłowe js? [duplikat]
To pytanie ma już odpowiedź tutaj:
Czy istnieje sposób na skompilowanie węzła.js aplikacja?
8 answers
Może bardzo późno, ale możesz użyć modułu "nexe", który kompiluje nodejs + Twój skrypt w jednym pliku wykonywalnym: https://github.com/crcn/nexe
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-11-28 18:32:15
Node.js działa na silniku Javascript V8, który sam optymalizuje wydajność poprzez kompilację kodu javascript do kodu natywnego... więc nie ma powodu do kompilacji, prawda?
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-04-04 16:27:45
Otrzymujesz w pełni funkcjonalny plik binarny bez źródeł.
Obsługiwane są również Moduły natywne. (musi być umieszczony w tym samym folderze)
Kod JavaScript jest przekształcany w kod natywny podczas kompilacji przy użyciu wewnętrznego kompilatora V8. Dlatego twoje źródła nie są wymagane do wykonania pliku binarnego i nie są pakowane.
Doskonale zoptymalizowany kod natywny może być generowany tylko w czasie wykonywania na maszynie klienta. Bez tej informacji EncloseJS może wygenerować tylko "nieoptymalizowany" kod. Działa około 2x wolniej niż NodeJS.
Również node.kod uruchomieniowy js jest umieszczany wewnątrz pliku wykonywalnego (wraz z kodem) w celu obsługi interfejsu API węzła dla Twojej aplikacji w czasie działania.
Przypadki użycia:
- Utwórz komercyjną wersję aplikacji bez źródeł.
- Stwórz wersję demo/ewaluacyjną / próbną aplikacji bez źródeł.
- Stwórz rodzaj samorozpakowującego się archiwum lub instalatora.
- Make a aplikacja GUI o zamkniętym źródle wykorzystująca node-thrust.
- nie ma potrzeby instalowania node i npm, aby wdrożyć skompilowaną aplikację.
- nie ma potrzeby pobierania setek plików przez npm install, aby wdrożyć aplikację. Wdrożyć go jako pojedynczy niezależny plik.
- umieść swoje zasoby w pliku wykonywalnym, aby uczynić go jeszcze bardziej przenośnym. Przetestuj swoją aplikację pod kątem nowej wersji węzła bez jej instalowania.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-19 09:48:03
Była tu odpowiedź: Bezpieczna dystrybucja aplikacji NodeJS . Raynos powiedział: V8 pozwala na wstępną kompilację JavaScript.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 11:33:26
Możesz użyć kompilatora Closure aby skompilować swój javascript.
Możesz również użyć CoffeeScript aby skompilować coffeescript do javascript.
Co chcesz osiągnąć kompilacją?
Zadanie kompilacji dowolnego nieblokującego JavaScript w dół, aby powiedzieć, C brzmi bardzo zniechęcająco.
Nie ma tak dużej prędkości, aby uzyskać kompilację do C lub ASM. Jeśli chcesz, aby speed gain odciążał obliczenia do programu C poprzez sub proces.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-26 21:54:33
Teraz może to obejmować więcej niż potrzebujesz (i może nawet nie działać dla aplikacji wiersza poleceń w środowisku nie graficznym, Nie wiem), ale jest nw.js . To Blink (np. Chromium/Webkit) + io.js (tj. Node.js).
Możesz użyć node-webkit-builder do tworzenia natywnych binariów wykonywalnych dla Linuksa, OS X i Windows.
Jeśli chcesz GUI, to ogromny plus. Możesz go zbudować za pomocą technologii internetowych.
Jeśli nie, podaj "node-main"
w package.json
(i prawdopodobnie "window": {"show": false}
chociaż może to działa, aby po prostu mieć node-main
a nie main
)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-15 18:08:54
Polecam uglifyJS , świetnie współpracuje z node.js.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-05-03 13:39:39
Javascript nie ma kompilatora takiego jak na przykład Java / C(można go porównać bardziej do języków takich jak PHP na przykład). Jeśli chcesz napisać skompilowany kod powinieneś przeczytać sekcję o addons i nauczyć się C. Chociaż jest to dość skomplikowane i nie sądzę, że musisz to robić, ale zamiast tego po prostu napisz javascript.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-26 23:29:44