2014-05-09 16 views
5

Quindi ero entusiasta di saltare in alcuni Hacklang e HHVM, e dopo aver finalmente ottenuto di farlo funzionare su una VM CentOS 6 (consiglio: servergrove.com ha un RPM da un repository del loro, ma aveva ancora bisogno di librerie condivise con MySQL 5.0 - il più vicino possibile a una facile installazione di CentOS 6 però ...), pensavo che avrei affrontato un mio progetto PHP ragionevolmente piccolo come un buon banco di prova per la conversione in Codice Hack.HHVM - Come usare hh_client correttamente

Sto attraversando il codice, ma non credo di capire completamente come si suppone che hh_client funzioni. Ho creato un file .hhconfig nella radice del mio progetto, quindi ho eseguito hh_client start dalla directory e sembra avviarlo correttamente. Vedo dopo aver eseguito tre processi hh_server -d /var/www/html/groundwork. Tuttavia, ogni volta che voglio digitare controlla il mio codice, devo eseguire un hh_client check, dove la lingua utilizzata nei documenti e altre fonti continua a suggerire che questo dovrebbe essere un controllo in tempo reale che si alimenta automaticamente - Potrei eseguire un watch hh_client check Immagino, ma sembra che mi manchi qualcosa.

ho fatto in modo di ottenere una copia dei file HHI come suggerito da Common php functions in hack

Inoltre, a volte quando inizio hh_client segnala roba che un controllo subito dopo non lo farà, pur non cambiare nulla nel codice. Il controllo è spesso meno errori. L'interruzione e l'avvio di hh_client vengono nuovamente riportati di nuovo.

Grazie.

risposta

8
+2

C'è anche uno per emacs: https://github.com/facebook/hhvm/blob/master/hphp/hack/editor-plugins/emacs/hack-for-hiphop.el. Per quanto riguarda il motivo per cui alcuni errori scompaiono dopo un controllo incrementale, ha a che fare con il modo in cui la modalità incrementale funziona e il modo in cui cerchiamo di evitare errori a cascata. Fondamentalmente alcune classi di errori possono mascherare gli altri, ma come esattamente ciò può accadere può variare. Se il controllore dice "nessun errore", allora non ci sono errori; ma se ci sono errori, potrebbero non essere * tutti * gli errori. –

+0

Ok grazie ragazzi. Di solito sto sviluppando in Windows da remoto, quindi un plugin Vim non sarebbe la mia prima scelta, ma lo controllerò comunque. E Josh, grazie per la spiegazione incrementale, ha senso almeno ora! – ndavison

1

Se si utilizza questo su Mac OSX 10.10 si devono usare Vagrant. Se si sta utilizzando Vagrant e si importano i file dalla macchina locale nella casella vagabonda, hh_client non rileva le modifiche. Per risolvere questo problema è possibile accedere alla casella vagabonda in un altro terminale ed eseguire quanto segue.

Alcune settimane fa brew not può installare hhvm sul tuo mac. Questo non dovrebbe più essere necessario.

Problemi correlati