Задать вопрос
mashletov
@mashletov
Math.random()

GOPATH в смешанных проектах?

Только начал осваивать Go. Согласно мануалу, GOPATH должен ссылаться на workspace, где в папке src будет храниться исходных код пакетов (и своих и чужих). У меня же основной язык PHP/C++ и я уже давно привык к структуре одна папка - один проект. Без разделения на языки: /Projects/CompanyX/ProjectNameX. Go же предлагает создать еще одну папку со своей структурой. К тому же, основной проект будет находится в одном месте, а только Go - в другом. Это просто удар по моему перфекционизуму :) Мне удобно было бы, допустим: /Projects/freelance/site1/services/GoModule.

Вопрос. Является ли правильным при работе с Go проектом в IDE переключать GOPATH на этот конкретный workspace? Мне больше по душе один проект – один workspace.

PS: уже задавал подобный вопрос тут, но в прошлом я не так сформулировал.
  • Вопрос задан
  • 306 просмотров
Подписаться 2 Простой 3 комментария
Решения вопроса 1
longclaps
@longclaps
Я же и отвечал, попробую еще раз )
Я использую IDE Gogland от JenBrains (поздняя предрелизная бета, пока доступна бесплатно), и не парюсь - она рулит за меня. В меню есть такие настройки:
  • File -> Default settings -> Global GOPATH, Project GOPATH, чекбокс "Use GOPATH from sys env"
  • File -> Project settings -> Global GOPATH, Project GOPATH, чекбокс "Use GOPATH from sys env", Module GOPATH
  • Run -> Edit conf -> File, Output dir, Working dir
Мне для учебных целей хватило указать Project GOPATH для исходников, во что транслируются все эти настройки для go-инфраструктуры - я не вникал, но оно есть )
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@f22
Можно хранить в подкаталоге vendor
https://blog.gopheracademy.com/advent-2015/vendor-...
Ответ написан
Комментировать
bitver
@bitver
Проект может находиться где угодно.
В GOPATH попадут скаченные пакеты и туда же удобно скидывать свои отдельные пакеты, тулзы, проекты и тд., чтоб можно было импортировать и использовать с любого проекта.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы