Come sviluppatore Python e Django, posso eseguire qualsiasi parte di codice nel mio progetto utilizzando uno script in modo indipendente.Avere più funzioni principali su Go
Non sono troppo sicuro di come ottenere la stessa cosa in Go, poiché sembra che ogni progetto Go debba avere solo un file eseguibile principale.
Mi piacerebbe chiamare una funzione nel mio progetto da cronjob, ma non sono sicuro di come aggiungerlo. Usare le bandiere nella mia funzione principale è l'unico modo in cui posso pensare di farlo. Ma sarà piuttosto confusa se il mio script accetta flag addizionali da sola come la seguente:
go run server.go --debug --another-flag --script-name <MY-SCRIPT> --my-script-flag-one <FLAG-ONE> --my-script-flag-two <FLAG-TWO>
C'è un modo elegante di fare questo?
È possibile trovare questa domanda utile: [cosa è un modo ragionevole per layout a Go project] (http://stackoverflow.com/q/14867452/142162) –
Rendi il pacchetto di codice un pacchetto e un comando. Ad esempio, [Posso avere una libreria e un binario con lo stesso nome?] (Http://stackoverflow.com/questions/14284375/can-i-have-a-library-and-binary-with-the-same- nome/14284575) – peterSO
parte della confusione sta pensando di andare come linguaggio di scripting. "go run" non dovrebbe essere usato per cose diverse dal giocare con un piccolo test, ad es. qualcosa che altrimenti metterebbe su "play.golang.org" – Dustin