web-dev-qa-db-fra.com

Comment exécuter un projet GO dans Eclipse avec goclipse installé

J'ai installé goclipse dans mon Eclipse et créé un nouveau projet go.

Maintenant, voici ce que j'ai:

enter image description here

Et j'ai hello.go ressemble à ceci:

package main

import "fmt"

func main() {
     fmt.Println("Hello")
}

Ensuite, j'appuie sur le bouton Exécuter ou cliquez avec le bouton droit de la souris sur le fichier hello.go, puis je l'exécute. Il ne donne rien. En outre, il est également vide dans le dossier bin.

J'appuie ensuite sur le bouton run configurations, presque vide avec seulement un nom de projet. il donne:

Given Go package not found.

Voici mes préférences pour Go: enter image description here

J'ai remarqué que GOROOT et GOPATH sont différents de ceux répertoriés dans l'Explorateur, mais une fois que je les ai modifiés en C:\Go\src\pkg ou C:\Go\src, les boutons Appliquer et OK sont désactivés. De plus, je n'ai pas non plus le dossier C:\Go\src\pkg.

Je peux utiliser go install ou go build en ligne de commande, mais j'aimerais utiliser Eclipse pour un autre projet beaucoup plus volumineux. Il s’agit de Windows 7 et la version Eclipse est Luna Service Release 1 (4.4.1). Je vous remercie.

EDIT: Maintenant, j'ai les configurations suivantes, et cela fonctionne très bien: Go est installé dans c:\Go Dans Préférences: GOROOT: C:\Go, GOPATH: C:\Utilisateurs\Tiina\go_workspace .__ Le reste dans les préférences est automatiquement renseigné . Le projet helloTest est situé dans C:\Utilisateurs\Tiina\go_workspace\src\helloTest Hello.go est situé dans C:\Utilisateurs\Tiina\go_workspace\src\helloTest\hello.go Peut-être parce que je crée un projet à partir de code existant et que quelque chose reste derrière, il ajoute automatiquement un autre GOPATH, supprimez-le dans Préférences.

14
Tiina

Si GOROOT fait référence à l'emplacement d'installation de go (C:\Go), vous devez vous assurer que:

  • GOPATH diffère de GOROOT (important, car GOROOT/[src|pkg|bin] sont des dossiers pour le langage Go lui-même et non pour vos propres sources)
  • GOPPATH pointe vers un dossier dans lequel tous vos différents projets Go vont résider (par exemple C:\Users\yourName\Go: qui définit un ESPACE DE TRAVAIL)
  • votre projet Eclipse est créé dans GOPATH\src\myproject

Voir " Comment écrire un code Go " pour vous assurer que vos sources d'installation et de projet respectent l'organisation attendue.


Le OP Tiina _ rapporte dans les commentaires :

Maintenant cela fonctionne, mais j'ai remarqué deux choses étranges. 

  • Premièrement, ce que j'ai fait: je déplace le dossier helloTest dans C:\Users\Tiina\go_workspace\src, il est donc maintenant à C:\Users\Tiina\go_workspace\src\helloTest
  • Ensuite, je crée un projet à partir du code existant. Rien d'autre n'a changé. Maintenant, j’ai deux GOPATH dans l’Explorateur, l’un est C:\Users\Tiina\go_workspace\src, l’autre est C:\Users\Tiina\go_workspace\helloTest\src.
    Ce dernier n'existait pas au début

Je soupçonne que (goclipse } _ fait est de définir une GOPATH par projet (ou de compléter la GOPATH existante).
Si vous créez ou importez un projet, il définira/complétera GOPATH dans <that project/src>
Si vous avez hello.go dans ce dossier <that project/src/>, il devrait alors se construire et fonctionner comme prévu.

Le guide utilisateur "structure du projet" de goclipse mentionne:

L'emplacement du projet ne fait partie d'aucune entrée GOPATH.
Dans ce cas, l'emplacement du projet sera implicitement ajouté en tant qu'entrée dans la variable GOPATH, et une structure d'espace de travail Go avec les répertoires bin, pkg et src sera utilisée dans le projet. 

Notez que l'entrée GOPATH implicite du projet ne s'appliquera qu'aux modules source de ce projet. Il ne sera pas visible par les autres projets Goclipse (sauf si l'entrée est explicitement ajoutée à la variable globale GOPATH).

Dans le dossier src, vous pouvez créer des fichiers source Go qui seront compilés dans un package de bibliothèque (et placés dans pkg) ou dans un exécutable (et placés dans bin).

13
VonC

Voici ce qu'il faut faire. Il faut toujours suivre la convention de GO concernant la structure de répertoires. Dans Eclipse, une fois le nouveau projet créé, créez un "nouveau dossier" dans le répertoire src en cliquant avec le bouton droit de la souris sur le dossier src. Et maintenant, sous ce dossier, créez un nouveau fichier GO. J'ai eu des problèmes en cours d'exécution sur mon MAC, mais en suivant les étapes ci-dessus, j'ai pu le résoudre.

  • Vishal (www.vishalpandya.com)
0
Vishal