android、java製作sdk以及自動生成文件
最近一直在做android開發,昨天經理讓我寫個介面SDK做個介面文件,以便後面的開發。
這讓我很焦灼,SDK怎麼做?要是隻有敲程式碼還好。可是那個介面文件!!!文件這東西最討厭了,頭都大了
後來查了下資料,JDK有個自帶的Javadoc,可以根據程式碼中的註釋自動生成文件。一下子世界變亮了有木有!!
文件可以自動生成,那生成文件我依據是什麼?
查下資料發現,只要在類、變數、方法上加註釋,就能自動生成文件了。這些註釋有自己的規範,可以先看看下面這篇博文
文件的事情搞定了,接下來就是SDK了。還沒開始製作就遇到一個問題:
我是要新建Android工程、還是Java工程?
考慮到我只要實現網路資料的請求,不需要提供任何介面,這裡就選擇了Java工程。
在我採用Java工程的時候,發現我需要Android中Context的時候,Java工程裡面是沒有的 !!! (反省中)
在這裡採用Android工程,把Activity檔案,圖片,Manifest中的application等用不上的全刪了(本sdk中沒有介面),可以右擊工程,選擇Properties-->選擇Android-->勾選 Is Library。(這樣就可以直接在專案中匯入了)
(需要提供介面的會遇到解決資原始檔不能打包的問題,這裡有篇博文需要的同學可以去看看
首先學會怎麼將工程打包成一個jar包(記得學java的第一節課上過)
1、在Eclipse中右擊需要打包的工程,選擇export
2 在export中展開java,選擇JAR file,點選next
3 選擇需要匯出的工程、匯出路徑以及jar包的名字,點選finish(注意,android工程中的mainfest檔案不要選,不然用的時候會出問題)
這裡有幾個選項
* Export generated class files and resources 表示只匯出生成的.class檔案和其他資原始檔
* Export all output folders for checked projects 表示匯出選中專案的所有資料夾
* Export java source file and resouces 表示匯出的jar包中將包含你的原始碼*.java,如果你不想洩漏原始碼,那麼就不要選這項了
* Export refactorings for checked projects 把一些重構的資訊檔案也包含進去
這樣就能在改路徑下找到我們生成的jar包了
jar包搞定了,接下來就輪到文件了
根據文章開頭的Javadoc語法編輯工程後,就可以生成文件了,步驟如下:
1 右擊工程,選擇export
2 在export中展開java 選擇Javadoc,點選next
3 在接下來的頁面中:
Javadoc command 中選擇jdk安裝路徑下的javadoc.exe
Select types for which Javadoc will begenerated 選擇生成doc的工程
User standard doclet 選擇doc的路徑
點選next
4 使用預設設定,點選next
5 點選finish,就能在對應的目錄下找到生成的doc
開啟對應的資料夾能看到
開啟 index,就能在瀏覽器中看到剛剛生成的文件了
是不是很眼熟!!!
似曾相識。。。
跟api文件好像
在生成文件的時候可能會看到這樣的提示
“錯誤 編碼 GBK 的不可對映字元”
說明註釋中有中文。解決方法:在生成文件的最後一步Vm options中輸入 -encoding utf-8 -charset utf-8 就可以了
就這樣搞定了。
知道做法以後生活是不是一下子就美好了!!!
乖乖做SDK去。。。
參考博文:
相關推薦
android、java製作sdk以及自動生成文件
最近一直在做android開發,昨天經理讓我寫個介面SDK做個介面文件,以便後面的開發。 這讓我很焦灼,SDK怎麼做?要是隻有敲程式碼還好。可是那個介面文件!!!文件這東西最討厭了,頭都大了 後來查了下資料,JDK有個自帶的Javadoc,可以根據程式碼中的註釋自動
java註釋及自動生成文件
單行註釋 多行註釋(這裡不再解釋) 這個就相當於空調說明書 文件註釋上面有兩個星號,生成的文件預設以Html形式儲存,可以生成說明文件 JavaDoc命令 從程式原始碼中抽取文件註釋形成一個和
php程式碼自動生成文件-phpDocumentor
概述 PHPDocumentor 能夠由你的程式碼自動生成文件。是一個用PHP寫的強盛的文件主動生成物件,可以直接使用命令來處理。對有範例解釋的php順序,可以快速生成具有佈局清楚、彼此參照、索引等功效的API文件。 官網:phpDocumentor GitHub上的phpDoc
Beego搭建api服務,自動生成文件。
在網上找了一些例子,為了應用方便,自己簡單記錄一下。前提條件:配置GOPATH、GOBIN、PATH 一、檢查環境配置,很重要! Ubuntu16.04下配置(~/.bashrc)如下: export GOPATH=/home/user/go export GOBIN=$
使用Swagger自動生成文件
Swagger 是什麼? Swagger 是一個規範和完整的框架,用於生成、描述、呼叫和視覺化 RESTful 風格的 Web 服務。 Springfox 的前身是 swagger-springmvc,是一個開源的 API doc 框架,可以將我們的 Controller
SwaggerUI 自動生成文件
swagger ui是一個API線上文件生成和測試的利器,目前發現最好用的。 為什麼好用?支援API自動生成同步的線上文件, 這些文件可用於專案內部API稽核,方便測試人員瞭解API,這些文件可作為客戶產品文件的一部分進行釋出,支援API規範生成程式碼,生成的
Objective-C 自動生成文件工具:appledoc
由於最近瑣事比較多,所以好久沒有寫文章了。今天我們聊一聊Objective-C自動生成文件。 做專案的人多了,就需要文件了。手工寫文件是一件苦差事,但是我們也有從原始碼中抽取註釋生成文件的專用工具。 經過查詢,比較大眾的有三個: doxygen:適於生成html文件與pdf文件
doxygen使用~~用這個註釋自動生成文件,炒雞方便
doxygen 使用 + C/C++註釋規範 1、安裝 yum -y install doxygen #基本安裝 yum -y install doxygen-doxywizard #圖形介面安裝 2、生成配置檔案 doxygen -g [配置檔名] #預設檔名為D
NelmioApiDocBundle自動生成文件(譯)
NelmioApiDocBundle NelmioApiDocBundle是一個開源的Symfony組建,能夠自動生成每個bundle以及內部每個action的document,並支援sandbox測試,可以手動變數輸入,非常方便api的開發。 如何安裝 把
Spring Boot如何讓Web API自動生成文件,並解決swagger-annotations的API註解description屬性廢棄的問題
前後端分離的系統架構中,前端開發人員需要檢視後端WEB API的文件來進行開發。採用後端API文件自動生成的方式,可以大幅提高開發效率。swagger是一個被廣泛使用的文件自動生成工具,可以與多種程式語言結合使用。我們可以利用合適的jar包,讓swqgger來協
Sphinx--python模組自動生成文件
安裝 pip install sphinx 假設現在我們有一個叫run.py的檔案,如下 # run.py def run(name): """ this is how we
加密演算法RSA與ECC對比,以及Android、java中使用
一、加密演算法前言 根據金鑰型別不同將現代密碼技術分為兩類:對稱加密演算法和非對稱加密演算法。對稱鑰匙加密系統是加密和解密均採用同一把祕金鑰匙,而且通訊雙方都必須獲得這把鑰匙,並保持鑰匙的祕密。 非對稱金鑰加密系統採用的加金鑰匙(公鑰)和解金鑰匙(私鑰)是不同的。 常見
使用 Swagger 自動生成 ASP.NET Core Web API 的文檔、在線幫助測試文檔(ASP.NET Core Web API 自動生成文檔)
地址 .cn 名稱 cor 生成文檔 def pos 構建 回車 對於開發人員來說,構建一個消費應用程序時去了解各種各樣的 API 是一個巨大的挑戰。在你的 Web API 項目中使用 Swagger 的 .NET Core 封裝 Swashbuckle 可以幫助你創建良好
JVM記憶體結構、Java記憶體模型以及Java物件模型之間的區別
Java作為一種面向物件的,跨平臺語言,其物件、記憶體等一直是比較難的知識點。而且很多概念的名稱看起來又那麼相似,很多人會傻傻分不清楚。比如本文我們要討論的JVM記憶體結構、Java記憶體模型和Java物件模型,這就是三個截然不同的概念,但是很多人容易弄混。 可以這樣說,很多高階開發甚至都搞
(Android、Java) MD5加密方法
Android、Java在http請求的時候都會做兩端加密驗證,有的會使用AES加密、解密,但大部分都是使用到MD5單向加密驗證,方法很簡單,只是在加密之前一定要串一個特殊的保密密匙(要混淆)! 需要導包 import java.security.MessageDigest;
(Android、Java) AES加密方法
Android、Java都會使用到AES加密,方法很簡單! 先匯入包 import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpec; import javax.crypto.Cipher; impo
小米殺不死的訊息推送-- Android、java後端同時接入小米推送
作者簡介 微信公眾號(高質量文章推送):陳博易 前言 小米手機選擇小米推送的原因:App程序被殺死的情況下,小米手機上的小米推送服務並不會被殺死(除非使用者手動在設定中關閉了該推送的許可權),所以我選擇給大家分享下小米推送。 這裡參
android、Java下判斷兩個String是否相等 、EditText輸入是否為空,限定輸入數字的實現 總結
str1.equals(str2)來判斷,不能用==或者!=來判斷,原因: 因為String是引用型別的,不是基本資料型別,所以它們的比較是使用地址和值(相當於C中的指標)來比較的,因為它們是不同的物件,有不同的地址,所以str1!=str2永遠
java.util.Date、java.sql.Timestamp、java.sql.Date以及String互轉
java 時間型別轉換 1、 ①long型時間戳轉為各型別時間。②各型別時間格式化解析為字串。 這裡所有時間日期都可以被SimpleDateFormat格式化format() SimpleDateFormat f = new SimpleDateForma
JAVA生成文件在linux下文件名亂碼
bsp ron -s style 成就 har digg window Coding TOMCAT + Java + Linux 問題描述 在JAVA中生成文件,文件名生成在windows下就正常,但是在linux下生成就亂碼。 解決方式 代碼中文件名用這樣的方式轉換 S