當您完成Java程式開發及調試後,您需要將Java程式打包為JAR包並以資源形式上傳至MaxCompute專案後,才可以註冊MaxCompute UDF,供後續在資料開發中調用。本文為您介紹在MaxCompute Studio中一鍵完成Java程式打包為JAR包、上傳JAR包為MaxCompute資源及註冊MaxCompute UDF。
前提條件
已完成Java程式開發及調試。更多開發及調試Java程式資訊,請參見開發UDF、開發MapReduce或開發Graph。
功能說明
MaxCompute Studio提供了一鍵式完成打包Java程式為JAR包、上傳JAR包至MaxCompute及註冊MaxCompute UDF操作的能力,推薦您使用該方式。
您也可以在MaxCompute Studio中依次執行以下三項操作:
操作步驟
在IntelliJ IDEA介面的左側導覽列,單擊Project,進入Module的源碼目錄(即 ),按右鍵已經編譯成功的Java程式,選擇Deploy to server…。
在Package a jar, submit resource and register function對話方塊中,配置下表所列參數資訊。
參數名
說明
MaxCompute Project
指定目標MaxCompute專案的名稱。此處會自動填滿當前Java程式所屬MaxCompute專案,您無需在下拉式清單選擇MaxCompute專案。
Resource file
MaxCompute Studio將Java程式打包為JAR包資源後,JAR包所在的本地路徑。
Resource name
JAR包上傳至MaxCompute專案後,對應的資源名稱。
Resource comment
JAR資源的注釋資訊。
Extra resources
註冊MaxCompute UDF時依賴的其他資源檔。您可以在資源清單中單擊選中目標資源檔。如果MaxCompute UDF依賴多個資源檔,按住Ctrl鍵逐個單擊需要的資源檔即可選中多個。此處的資源清單展示的是您已經上傳至MaxCompute專案的資源,更多添加資源資訊,請參見添加資源。
Main class
新註冊MaxCompute UDF的類名。即Java程式中定義的類。
Function name
MaxCompute Studio基於JAR包資源註冊的MaxCompute UDF名稱。及後續在SQL中調用的函數名稱。
Force update if already exists
選中該項,表示當MaxCompute專案中存在同名函數或資源時,新函數或資源會替代舊函數或資源。
單擊OK,完成打包、上傳資源及註冊MaxCompute UDF。
完成上述操作後,即可在SQL中調用MaxCompute UDF。
下一步
完成Java UDF註冊後,您即可通過MaxCompute SQL調用Java UDF:
在歸屬MaxCompute專案中使用UDF:使用方法與內建函數類似,您可以參照內建函數的使用方法使用自訂函數。
跨專案使用自訂函數:即在專案A中使用專案B的自訂函數,跨專案調用UDF樣本:
SELECT B:<udf_naem> (<arg0>, <arg1>) FROM <table_name>;
。更多跨專案分享資訊,請參見基於Package跨專案訪問資源。
相關文檔
開發、調用UDF(Java)過程中的常見問題,請參見MaxCompute UDF(Java)常見問題。
UDF開發樣本,請參見UDF開發樣本匯總。