1. 程式人生 > >Protoc編譯得到的程式碼編譯異常,提示需要匯入DescriptorProtos類

Protoc編譯得到的程式碼編譯異常,提示需要匯入DescriptorProtos類

在解決這個問題的時候,於是看過一些博文如下面:

https://blog.csdn.net/m_changgong/article/details/7759751

博主在博文中提到:

      曾想用下載的原始碼手工編譯jar,但是缺少類DescriptorProtos.java,而用Maven編譯會用protoc.exe生成DescriptorProtos.java類滴。

      萬能的Google可以解決:

      http://grepcode.com/snapshot/repo1.maven.org/maven2/com.google.protobuf/protobuf-java/2.4.1

      可以下載protobuf各版本完整的原始碼(包含DescriptorProtos.java)以及編譯好的jar。


這個發覺被牆了,訪問不了,於是就另尋他法。

 

又找到了一文章:http://blog.51cto.com/java711/1588053

試了一下,發覺路徑有問題,要改成自己的descriptor.proto檔案的路徑,我起初以為不用改折騰了一下,結果不改了,其實應該是沒有問題的

 

下面說說我的做法:

1、在你的protobuf-java-3.4.0(版本不一樣時路徑的相對位置不變)\protobuf-3.4.0\src\google\protobuf資料夾的找到descriptor.proto

 

2、按住shift+滑鼠右鍵,選擇“在此處開啟命令視窗”

在命令視窗中輸入:protoc --java_out=. descriptor.proto,按下鍵盤迴車鍵執行指令

 

3、執行完上面的指令,會在descriptor.proto同一級檔案目錄生成一個com資料夾

一直開啟到最後,你會看到你一直想要的DescriptorProtos類已經躺在那裡了,然後將它複製到你的工程就OK了