Не могу найти заказной пакет - PullRequest
1 голос
/ 24 апреля 2020

Я пытаюсь создать пользовательский пакет в go: я создал проект папки:

my_project
|_database
  |_database.go
main.go

, но когда я пытаюсь импортировать его, появляется сообщение об ошибке: "не удалось импортировать базу данных (нет пакет для базы данных импорта) "

я пытаюсь запустить" go init ", как написано в каком-то учебнике, и создал файл" go .mod ", затем я запускаю" go install "и работает хорошо, но в основном. go это все еще не работает. Структура проекта теперь такая:

my_project
|_database
  |_database.go
  |_go.mod
  |_go.sum
main.go

Я работаю на windows с визуальным кодом студии

Вот как я импортирую пакет:

import (
    "fmt"
    ...
    "database"
)

function main() {

1 Ответ

1 голос
/ 25 апреля 2020

Вам нужно сделать несколько вещей.

Убедитесь, что ваша база данных. go выглядит следующим образом:

она должна содержать имя пакета, в данном случае это база данных, прокомментируйте функцию / функции, которые необходимо использовать вне этого пакета, используйте fun c вместо функции. и комментируйте код и пишите имя заглавной буквы, чтобы его можно было экспортировать.

package database

import "fmt"

// Connect function to connect to my database
func Connect(){
   fmt.Print("connected...")
}

ваш основной. go должен быть следующим.

use fun c вместо функции импортируйте базу данных в зависимости от положения папки, в этом случае ./ используйте базу данных имен пакетов. потому что эта функция не принадлежит текущему пакету main.

package main

import "./database"

func main() {
   database.Connect()
}

Это должна быть структура вашей папки.

my_project
|_database
  |_database.go
main.go
go.mod 
go.sum
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...