有没有人尝试过使用IntelliJ IDEA来处理AOSP?我在Android源码中看到了一个特定的文件夹( development /ide/intellij),但是我找不到任何在Android开发的情况下如何使用它的信息(对于Eclipse,信息可以在这里找到:http://source.android.com/source/using-eclipse.html)谁能提供类似的说明,如何在IDEA中开始开发Android?
发布于 2015-09-14 21:42:26
这里还有一个很好的读物:https://shuhaowu.com/blog/setting_up_intellij_with_aosp_development.html
如果你得到了
无法找到idegen.jar。请先运行make。
您需要首先生成它:
source build/envsetup.sh
cd development/tools/idegen
mm
croot
development/tools/idegen/idegen.sh准备好在IJ中索引AOSP文件需要很长时间(在我的笔记本上有一个SSD ),这是使用Eclipse的一个原因,因为我认为它不需要建立索引,所以加载AOSP代码的速度要快得多。
通过删除您不感兴趣的AOSP部件来减少android.iml文件是值得的。您可以通过正则表达式模式将它们添加到development/tools/idegen/excluded-paths,请参阅自述文件。
我在excluded-paths中添加了以下几行
^cts
^developers
^development
^external
.*/tests/.*
^sdk所以我的android.iml变得相当中等大小,只需要1-2分钟就能加载。
idegen还有intellij-gen.sh,它可以为给定的模块生成IJ项目。
正如上面文章中提到的,您可以调整IJ以更快地工作(添加更多RAM,等等)。下面是我的idea64.vmoptions以防万一:
-server
-Xms2048m
-Xmx4096m
-XX:MaxPermSize=1024M
-XX:ReservedCodeCacheSize=1024M
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops
-XX:+UseConcMarkSweepGC
-XX:+UseParNewGC
-XX:ParallelGCThreads=8
-XX:+AggressiveOpts
-XX:+CMSClassUnloadingEnabled
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:CMSIncrementalDutyCycleMin=0
-XX:-TraceClassUnloading
-XX:+TieredCompilation
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djsse.enableSNIExtension=false你可以谷歌idea.vmoptions优化,有一些关于它的帖子(我的IJ配置是从哪里来的)
发布于 2013-09-29 10:37:25
从AOSP根文件夹,
1)首先构建目标。这将生成在aosp构建期间需要生成的任何java文件。2)使用lndir创建aosp目录的卷影目录。假设你的aosp目录是~john/work/aosp/ics。然后创建~/john/work/aosp/icsshadow
Cd到icsshadow并调用"lndir ../ics“。这将创建指向ics下所有内容的符号链接。
3)现在,您可以使用icsshadow来处理IDE需要/生成的所有内容。如果使用ics文件夹,当IDE生成任何构建工件时,aosp构建有时会失败。
4) cd至icsshadow目录。调用开发/工具/idegen/idegen.sh
等到这件事完成。
5)如果您想使用IntelliJ,请从icsshadow文件夹中打开android.ipr。如果你想使用Eclipse,请查看Using Eclipse to edit/browse AOSP code。
发布于 2017-06-19 16:36:21
可以通过转到development/tools/idegen路径并检查README文件来找到官方说明。你自己读一读是个好主意。以下是IntelliJ的内容:
如果您使用的是IntelliJ,
...
如果这是您第一次使用IDEGen...
IDEA需要大量的内存。在Linux上的"IDEA_HOME/bin/idea.vmoptions“或OS X上的"IntelliJ IDEA.app/Contents/Info.plist”中,将“JDK -Xmx748m”添加到VM选项中。创建名为"1.6 (无库)“的IntelliJ配置,方法是像往常一样添加一个新的JDK,然后删除"Classpath”选项卡下的所有jar条目。这将确保您只能访问Android的核心库,而不是桌面虚拟机上的核心库。
从项目的根目录...
在每次同步后重复这些步骤...1)制作(以生成生成的.java源代码) 2)开发/ android.ipr /idegen/idegen.sh 3)在IntelliJ中打开工具。如果你已经打开了项目,点击IntelliJ中的同步按钮,它将自动检测更新的配置。如果您从IntelliJ获得意外的编译错误,请尝试运行"Build -> Rebuild Project“。有时,在项目发生重大变化后,IntelliJ会感到困惑。
按照说明操作时,可能会弹出以下错误消息。
无法找到idegen.jar。请先运行make。
您可以通过阅读以下内容来修复错误消息:https://www.protechtraining.com/blog/post/860?ncr=1
https://stackoverflow.com/questions/16582112
复制相似问题