sirve que precio philip para morris mexico marlboro iqos heets funciona como go struct

go - que - iqos philip morris



el tipo de paquete no se puede usar como el tipo de paquete vedado (4)

Estoy tratando de usar este paquete API de Golang Yelp . En algunas de sus estructuras, utiliza los tipos definidos en el paquete nulo de guregu .

Quiero declarar una estructura definida en el paquete API de Yelp, donde algunos de sus campos tienen valor null.Float como valor ( es decir, esta estructura, que estoy tratando de usar ). Entonces, en mi programa, importo tanto el paquete API de Yelp como el paquete nulo de guregu e intento declarar la estructura, con ip.Lat e ip.Lat siendo float64s. ( null.FloatFrom Definición de null.FloatFrom ) :

33 locationOptions := yelp.LocationOptions{ 34 ip.Zip, 35 &yelp.CoordinateOptions{ 36 Latitude: null.FloatFrom(ip.Lat), 37 Longitude: null.FloatFrom(ip.Lon), 38 }, 39 }

Pero cuando ejecuto el programa, me dice:

./cli.go:36: cannot use "github.com/guregu/null".FloatFrom(ip.Lat) (type "github.com/guregu/null".Float) as type "github.com/JustinBeckwith/go- yelp/yelp/vendor/github.com/guregu/null".Float in field value

Intenté 2 cosas:

1) No importé el paquete null , lo que provocó que Go se quejara de que null estaba indefinido. 2) También intenté importar el paquete vendored directamente, lo que provocó que Go me dijera que el use of vendored package not allowed .

¿Alguna idea sobre cómo solucionar este problema?


La solución aquí parece ser que la biblioteca que estoy tratando de usar necesita ser modificada para evitar que ocurra este tipo de cosas.

Las dos formas posibles de cambiar la biblioteca parecen ser

1) no proveedor en absoluto: esto funciona si la dependencia no necesita ser una versión específica.

2) distribuido, pero no exponga la biblioteca vendida al público. Cree algunas funciones de contenedor en la biblioteca para que las personas puedan crear los tipos indirectamente.

Vea esta discusión sobre la venta en reddit para obtener más ideas / razones por las cuales.


Solo tuve un problema similar. Poniendo ambas bibliotecas en /vendor resuelto. Usando govendor get xxxx



Tuve un problema similar al usar Godep y lo resolví eliminando /vendor y volviendo a ejecutar godep save ./... - Espero que ayude.