2014-06-18 16 views
5

Herkese selam Ben Golang için oldukça yeni, sadece kütüphaneleri öğrenmek için oyuncak istemci ve sunucu uygulaması yazıyorum. Ben oluştururkenProjeye devam edin 2 çalıştırılabilir

  • client.go
  • server.go

Ama:

[email protected] {~/workspace/gospace/src/github.com/redbrain/station} $ echo $GOPATH 
/Users/philipherron/workspace/gospace 

Ben 2 ikilileri olmasını istedik:

Ama proje klasörü var Anlıyorum:

[email protected] {~/workspace/gospace/src/github.com/redbrain/station} $ go build github.com/redbrain/station/ 
# github.com/redbrain/station 
./server.go:5: main redeclared in this block 
    previous declaration at ./client.go:5 

Sanırım bunun nedeni, aynı pakete şebeke yapmayı düşünüyorum.

Yani bir istemci ve bir sunucu Subdir oluşturma çalıştı ve bu her birinde ikilileri var ama olsun:

$ tree 
. 
├── client 
│   └── client.go 
└── server 
    └── server.go 

2 directories, 4 files 
:

[email protected] {~/workspace/gospace/src/github.com/redbrain/station} $ go build github.com/redbrain/station/client 
go install github.com/redbrain/station/client: build output "client" already exists and is a directory 

ben düzenini çünkü bu sanırım

Bu konuyla nasıl uğraşacağından emin değilsiniz, aynı dizinde aynı istemcinin ve sunucunun olması güzel olurdu ama belki de bu işler nasıl devam etmem gerekiyor?

+0

Git derleme komutu, geçerli dizininizde bir yürütülebilir dosya oluşturmaya çalışır. İstemci adında bir dosya veya dizin bulunmayan bir dizinden çalıştırmayı deneyin. – fuz

+0

Teşekkürler evet, teşekkürler dikkat etmedim! – redbrain

cevap

7

.go dosyalarınızı yeniden adlandırın. Derleyici 'client' yazmaya çalışıyor ama 'client' zaten dizin tarafından çekiliyor.

$ tree 
. 
├── client 
│ └── main.go 
└── server 
    └── main.go 

2 directories, 4 files 

Ve/Veya ardından GOBIN = $ GOPATH/bin set eğer istemci ve sunucu yaratacak, yukarıdaki gibi ayrı paketler ile birlikte farklı bir ad go build -o client client/main.go

+0

Şimdi anladım, çok aptalca hissediyorum ki, dikkatimi farketmedim. – redbrain

0

onları çıktılar bir komut dosyası oluşturmak bin dizininde ve dir adları ile çarpışmayacak

İlgili konular