最新消息:20210917 已从crifan.com换到crifan.org

【未解决】参考开发环境文档入手开发RCS的项目rcsjta

参考 crifan 407浏览 0评论
折腾:
【未解决】学习rcsjta的wiki文档搞懂开发逻辑
期间,算了,看了这么多文档,还是只有
rcsjta/DevEnv.md at wiki · android-rcs/rcsjta
供直接入手开发可以参考。
#Prerequisites
* Check that your git environment and IDE are configured to use JDK 1.7.
* Configure the ANDROID_HOME environment variable based on the location of the Android SDK.
* Add the ANDROID_HOME/tools and ANDROID_HOME/platform-tools to your PATH.
先去检查jdk版本
又回到了之前的:
【未解决】确保已给rcsjta项目安装了匹配的版本的Java即JDK
目前先假设已满足,然后继续。
然后再去,确保已安卓android sdk:
【已解决】Mac中安装android Studio和android SDK
继续:
对于:
git clone https://github.com/android-rcs/rcsjta.git -b 'a branch'
感觉无需非要某个分支。
之前已下载整个项目代码了。
From a console, list of tasks of the RCSJTA project via the command line:
gradlew tasks
去看看
gradlew tasks 
会触发下载
Downloading https://services.gradle.org/distributions/gradle-2.14.1-all.zip
最后失败:
【已解决】gradlew tasks报错:A problem occurred configuring project SDK location not found
然后就可以继续了:
xxx@xxx  ~/dev/xxx/RCS/rcsjta  gradlew tasks
File /Users/xxx/.android/repositories.cfg could not be loaded.
Checking the license for package Android SDK Build-Tools 24 in /Users/xxx/Library/Android/sdk/licenses
License for package Android SDK Build-Tools 24 accepted.
Preparing "Install Android SDK Build-Tools 24".
"Install Android SDK Build-Tools 24" ready.
Finishing "Install Android SDK Build-Tools 24"
Installing Android SDK Build-Tools 24 in /Users/xxx/Library/Android/sdk/build-tools/24.0.0
"Install Android SDK Build-Tools 24" complete.
Checking the license for package Android SDK Platform 23 in /Users/xxx/Library/Android/sdk/licenses
License for package Android SDK Platform 23 accepted.
Preparing "Install Android SDK Platform 23".
"Install Android SDK Platform 23" ready.
Finishing "Install Android SDK Platform 23"
Installing Android SDK Platform 23 in /Users/xxx/Library/Android/sdk/platforms/android-23
"Install Android SDK Platform 23" complete.
Download https://jcenter.bintray.com/com/google/doclava/doclava/1.0.6/doclava-1.0.6.pom
Download https://jcenter.bintray.com/com/google/doclava/doclava/1.0.6/doclava-1.0.6.jar
Incremental java compilation is an incubating feature.
Checking the license for package Android Support Repository in /Users/xxx/Library/Android/sdk/licenses
License for package Android Support Repository accepted.
Preparing "Install Android Support Repository".
"Install Android Support Repository" ready.
Finishing "Install Android Support Repository"
Installing Android Support Repository in /Users/xxx/Library/Android/sdk/extras/android/m2repository
"Install Android Support Repository" complete.
Checking the license for package Google Repository in /Users/xxx/Library/Android/sdk/licenses
License for package Google Repository accepted.
Preparing "Install Google Repository".
"Install Google Repository" ready.
Finishing "Install Google Repository"
Installing Google Repository in /Users/xxx/Library/Android/sdk/extras/google/m2repository
"Install Google Repository" complete.
Download https://jcenter.bintray.com/dnsjava/dnsjava/2.1.7/dnsjava-2.1.7.pom
Download https://jcenter.bintray.com/dnsjava/dnsjava/2.1.7/dnsjava-2.1.7.jar
:tasks


------------------------------------------------------------
All tasks runnable from root project
------------------------------------------------------------


Android tasks
-------------
androidDependencies - Displays the Android dependencies of the project.
signingReport - Displays the signing info for each variant.
sourceSets - Prints out all the source sets defined in this project.


Build tasks
-----------
assemble - Assembles all variants of all applications and secondary packages.
assembleAndroidTest - Assembles all the Test applications.
assembleDebug - Assembles all Debug builds.
assembleRelease - Assembles all Release builds.
build - Assembles and tests this project.
buildDependents - Assembles and tests this project and all projects that depend on it.
buildNeeded - Assembles and tests this project and all projects it depends on.
clean - Deletes the build directory.
compileDebugAndroidTestSources
compileDebugSources
compileDebugUnitTestSources
compileReleaseSources
compileReleaseUnitTestSources
extractDebugAnnotations - Extracts Android annotations for the debug variant into the archive file
extractReleaseAnnotations - Extracts Android annotations for the release variant into the archive file
mockableAndroidJar - Creates a version of android.jar that's suitable for unit tests.


Build Setup tasks
-----------------
init - Initializes a new Gradle build. [incubating]
wrapper - Generates Gradle wrapper files. [incubating]


Help tasks
----------
buildEnvironment - Displays all buildscript dependencies declared in root project 'rcsjta'.
components - Displays the components produced by root project 'rcsjta'. [incubating]
dependencies - Displays all dependencies declared in root project 'rcsjta'.
dependencyInsight - Displays the insight into a specific dependency in root project 'rcsjta'.
help - Displays a help message.
model - Displays the configuration model of root project 'rcsjta'. [incubating]
projects - Displays the sub-projects of root project 'rcsjta'.
properties - Displays the properties of root project 'rcsjta'.
tasks - Displays the tasks runnable from root project 'rcsjta' (some of the displayed tasks may belong to subprojects).


Install tasks
-------------
installDebug - Installs the Debug build.
installDebugAndroidTest - Installs the android (on device) tests for the Debug build.
uninstallAll - Uninstall all applications.
uninstallDebug - Uninstalls the Debug build.
uninstallDebugAndroidTest - Uninstalls the android (on device) tests for the Debug build.
uninstallRelease - Uninstalls the Release build.


Verification tasks
------------------
check - Runs all checks.
connectedAndroidTest - Installs and runs instrumentation tests for all flavors on connected devices.
connectedCheck - Runs all device checks on currently connected devices.
connectedDebugAndroidTest - Installs and runs the tests for debug on connected devices.
deviceAndroidTest - Installs and runs instrumentation tests using all Device Providers.
deviceCheck - Runs all device checks using Device Providers and Test Servers.
lint - Runs lint on all variants.
lintDebug - Runs lint on the Debug build.
lintRelease - Runs lint on the Release build.
test - Run unit tests for all variants.
testDebugUnitTest - Run unit tests for the debug build.
testReleaseUnitTest - Run unit tests for the release build.


Other tasks
-----------
assembleDefault
extractProguardFiles
jarDebugClasses
jarReleaseClasses
javadoc
transformResourcesWithMergeJavaResForDebugUnitTest
transformResourcesWithMergeJavaResForReleaseUnitTest


To see all tasks and more detail, run gradlew tasks --all


To see more detail about a task, run gradlew help --task <task>


BUILD SUCCESSFUL


Total time: 2 mins 0.021 secs


This build could be faster, please consider using the Gradle Daemon: https://docs.gradle.org/2.14.1/userguide/gradle_daemon.html
终于编译成功了。
有很多任务可以供运行:
  • Android tasks
    • androidDependencies – Displays the Android dependencies of the project.
    • signingReport – Displays the signing info for each variant.
    • sourceSets – Prints out all the source sets defined in this project.
  • Build tasks
    • assemble – Assembles all variants of all applications and secondary packages.
    • assembleAndroidTest – Assembles all the Test applications.
    • assembleDebug – Assembles all Debug builds.
    • assembleRelease – Assembles all Release builds.
    • build – Assembles and tests this project.
    • buildDependents – Assembles and tests this project and all projects that depend on it.
    • buildNeeded – Assembles and tests this project and all projects it depends on.
    • clean – Deletes the build directory.
    • compileDebugAndroidTestSources
    • compileDebugSources
    • compileDebugUnitTestSources
    • compileReleaseSources
    • compileReleaseUnitTestSources
    • extractDebugAnnotations – Extracts Android annotations for the debug variant into the archive file
    • extractReleaseAnnotations – Extracts Android annotations for the release variant into the archive file
    • mockableAndroidJar – Creates a version of android.jar that’s suitable for unit tests.
  • Build Setup tasks
    • init – Initializes a new Gradle build. [incubating]
    • wrapper – Generates Gradle wrapper files. [incubating]
  • Help tasks
    • buildEnvironment – Displays all buildscript dependencies declared in root project ‘rcsjta’.
    • components – Displays the components produced by root project ‘rcsjta’. [incubating]
    • dependencies – Displays all dependencies declared in root project ‘rcsjta’.
    • dependencyInsight – Displays the insight into a specific dependency in root project ‘rcsjta’.
    • help – Displays a help message.
    • model – Displays the configuration model of root project ‘rcsjta’. [incubating]
    • projects – Displays the sub-projects of root project ‘rcsjta’.
    • properties – Displays the properties of root project ‘rcsjta’.
    • tasks – Displays the tasks runnable from root project ‘rcsjta’ (some of the displayed tasks may belong to subprojects).
  • Install tasks
    • installDebug – Installs the Debug build.
    • installDebugAndroidTest – Installs the android (on device) tests for the Debug build.
    • uninstallAll – Uninstall all applications.
    • uninstallDebug – Uninstalls the Debug build.
    • uninstallDebugAndroidTest – Uninstalls the android (on device) tests for the Debug build.
    • uninstallRelease – Uninstalls the Release build.
  • Verification tasks
    • check – Runs all checks.
    • connectedAndroidTest – Installs and runs instrumentation tests for all flavors on connected devices.
    • connectedCheck – Runs all device checks on currently connected devices.
    • connectedDebugAndroidTest – Installs and runs the tests for debug on connected devices.
    • deviceAndroidTest – Installs and runs instrumentation tests using all Device Providers.
    • deviceCheck – Runs all device checks using Device Providers and Test Servers.
    • lint – Runs lint on all variants.
    • lintDebug – Runs lint on the Debug build.
    • lintRelease – Runs lint on the Release build.
    • test – Run unit tests for all variants.
    • testDebugUnitTest – Run unit tests for the debug build.
    • testReleaseUnitTest – Run unit tests for the release build.
  • Other tasks
    • assembleDefault
    • extractProguardFiles
    • jarDebugClasses
    • jarReleaseClasses
    • javadoc
    • transformResourcesWithMergeJavaResForDebugUnitTest
    • transformResourcesWithMergeJavaResForReleaseUnitTest
继续:
From a console, list all projects via the command line:
gradlew projects
去试试
 xxx@xxx  ~/dev/xxx/RCS/rcsjta  gradlew projects
Incremental java compilation is an incubating feature.
:projects


------------------------------------------------------------
Root project
------------------------------------------------------------


Root project 'rcsjta'
+--- Project ':RI'
+--- Project ':api'
+--- Project ':api_cnx'
+--- Project ':bouncycastle'
+--- Project ':core'
+--- Project ':cts_provider'
+--- Project ':cts_signature'
+--- Project ':extension'
+--- Project ':mediaplayer'
+--- Project ':nist_sip'
+--- Project ':notification'
+--- Project ':provisioning'
+--- Project ':settings'
\--- Project ':tts'


To see a list of the tasks of a project, run gradlew <project-path>:tasks
For example, try running gradlew :RI:tasks


BUILD SUCCESSFUL


Total time: 7.764 secs


This build could be faster, please consider using the Gradle Daemon: https://docs.gradle.org/2.14.1/userguide/gradle_daemon.html
有很多个project
  • Root project rcsjta
    • RI
    • api
    • api_cnx
    • bouncycastle
    • core
    • cts_provider
    • cts_signature
    • extension
    • mediaplayer
    • nist_sip
    • notification
    • provisioning
    • settings
    • tts
然后参考:
From a console, build all projects via the command line:
gradlew build

From a console, install all projects via the command line:
gradlew installDebug

From a console, build the RCS SDK via the command line:
ant sdk
(the SDK is produced in the directory ./gen)
好像要编译所有的项目?
Build the RCS stack only
gradlew :core:build
或者还是先单独编译stack吧?
以及:
Build the RI application only
gradlew :RI:build
只编译参考实现?
Build the RCS core settings application only
gradlew :settings:build
看来这个settings是个app,用于配置 设置 RCS core的?
Build the Javadoc only
gradlew javadoc
(the javadoc is produced in the directory ./libs/api/build/docs/javadoc)
暂时没必要编译doc
算了,暂时还是先单独编一些东西:
【已解决】编译rcsjta项目中的RCS的core
然后再去编译:
【已解决】编译rcsjta项目中的RCS的RI参考实现
然后再去编译:
【已解决】编译rcsjta项目中的RCS的settings设置

转载请注明:在路上 » 【未解决】参考开发环境文档入手开发RCS的项目rcsjta

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
90 queries in 0.191 seconds, using 23.39MB memory