मैंने एक बहुत ही सरल प्रोग्राम बनाया है जो Google क्लाउड प्रोजेक्ट में उपलब्ध विषयों को सूचीबद्ध करना चाहिए। कोड तुच्छ है:Google.Pubsub.V1 beta01 डॉटनेट क्ली परियोजनाओं के साथ क्यों काम नहीं करता है?
using System;
using Google.Pubsub.V1;
public class Test
{
static void Main()
{
var projectId = "(fill in project ID here...)";
var projectName = PublisherClient.FormatProjectName(projectId);
var client = PublisherClient.Create();
foreach (var topic in client.ListTopics(projectName))
{
Console.WriteLine(topic.Name);
}
}
}
जब मैं एक "नियमित" MSBuild परियोजना को लक्षित .NET 4.5 से चलाने के लिए, यह ठीक काम करता है। जब मैं निम्नलिखित project.json
फ़ाइल के साथ डॉटनैट CLI (1.0.0-preview2-003121) का उपयोग करने का प्रयास करें:
Unhandled Exception: System.IO.FileNotFoundException: Error loading native library.
Not found in any of the possible locations c:\[...]\Pubsub.Demo\bin\Debug\net45\win7-x64\nativelibs\windows_x64\grpc_csharp_ext.dll
at Grpc.Core.Internal.UnmanagedLibrary.FirstValidLibraryPath(String[] libraryPathAlternatives)
at Grpc.Core.Internal.UnmanagedLibrary..ctor(String[] libraryPathAlternatives)
at ...
मैं की कोशिश नहीं कर रहा हूँ:
{
"buildOptions": {
"emitEntryPoint": true
},
"dependencies": {
"Google.Pubsub.V1": "1.0.0-beta01"
},
"frameworks": {
"net45": { }
}
}
... मैं एक अपवाद को देखने के लक्ष्य .NET कोर, तो यह समर्थित नहीं होना चाहिए?
(एक त्वरित साइड-नोट के रूप में, इस प्रश्न पूछने का मेरा मुख्य कारण 'Google-क्लाउड-डॉटनेट' टैग को हमारे Google क्लाउड .NET क्लाइंट लाइब्रेरी ग्राहकों के लिए केंद्रीय टैग के रूप में बनाना था। लेकिन मुझे उम्मीद है कि यह है ऐसा कुछ जो स्वाभाविक रूप से अच्छी तरह से आ सकता है ...) –