我正在开发几个与它们之间的依赖关系的模块,并希望在一个IDEA项目中一起使用它们。 我正在使用sbt-idea从sbt构build定义生成IDEA项目,这对于单个项目非常有用。 然而,在多模块的情况下,我迄今为止所尝试的东西并不完全正常: 使用sbt-idea独立地为每个模块生成一个IDEA .iml文件 ; 然后从头开始创build一个主IDEA项目并将这些模块添加到它。 这使得模块的源代码在同一个窗口中都是可编辑的,但是它们之间的依赖关系没有被跟踪(所以试图从foo项目中的某个源代码导航到bar中的某些东西将我带到导入的库版本,而不是本地源代码)。 使用sbt 多项目构build (也称为子项目) ,其中父项目的Build.scala包含如下内容: lazy val foo = Project(id = "foo", base = file("foo")) lazy val bar = Project(id = "bar", base = file("bar")) dependsOn(foo) 这几乎可以工作,因为sbt-idea会生成一个主IDEA项目,并跟踪所有子项目之间的依赖关系。 有两个警告: 子项目必须存在于主项目的子目录中(即不允许使用file("../foo")似乎是一种限制。 这实际上并不是我想要的(如果在两个不同的主项目中使用某个模块,比如“utils”或“commons”包),但是我可以忍受。 我的一个子项目有自己的子项目; 我不确定sbt本身是否正确处理这些嵌套的项目,但无论如何,它们被sbt-idea忽略。 显然我需要嵌套子项目recursion包含在主项目中。 总结一下:我想将可能已经有子项目的模块收集到一个大的IDEA项目中,并进行跟踪,以便编辑。 我该怎么做? 谢谢!
我正在使用IntelliJ IDEA,但我认为这适用于任何IDE。 在IDEA中,一些非常有用的键盘快捷键与Ubuntu键盘快捷键冲突。 一些例子: Ctrl + Alt + L :格式化源代码(在Ubuntu中映射到“Lock Screen”) Ctrl + Alt + Left :向后导航(在Ubuntu中映射到“切换到当前工作区左侧的工作区”) … 我一直在使用Ubuntu,我已经习惯了这些捷径。 我一直使用它们来在工作区之间切换,locking会话…同时,我知道IntelliJ快捷键的用处是多么的有用,我想尽可能的避免使用鼠标。 目前,我的“格式源代码”的解决方法是Alt + D (打开“代码”菜单),然后是“R”(“重新格式化代码”)。 它工作正常,因为我不经常格式化代码,但它可能会更好。 但是, Ctrl + Alt + Left没有真正的select。 如何在IDE中pipe理这些冲突? 你是否简单地将所有相互冲突的IDE键盘快捷键重新映射到其他东西(然后在与同事使用不同的快捷键结对编程时会丢失)? 你重映射的Linux键盘快捷键(即使你是“使用”他们)? 有没有办法使键盘快捷键“上下文”? 通过这个,我的意思是:当编码(所有相互冲突的Ubuntu快捷方式暂时停用)时,点击一个键进入“IDEA模式”,再次点击该键返回到“标准模式”(Ubuntu快捷方式被反应)。 你有任何其他的想法/提示如何pipe理这个问题?
我正在使用Android Studio/IntelliJ构build现有的Android项目,并希望添加一些简单的JUnitunit testing。 什么是正确的文件夹添加这样的testing? Android Gradle插件定义了一个目录结构,主要源代码为src/main/java src/instrumentTest/java , Androidtesting为src/instrumentTest/java 。 试图在instrumentTest中添加我的JUnittesting对我不起作用。 我可以运行它作为一个Androidtesting(这就是目录似乎),但这不是我所期待的 – 我只是想运行一个简单的JUnittesting。 我试图创build一个JUnit运行configuration这个类,但也没有工作 – 我假设,因为我使用的标记为Androidtesting代替源的目录。 如果我在Project Structure中创build了一个新的源文件夹并将其标记为marki,那么下次IntelliJ将从Gradle构build文件中刷新项目configuration时将被擦除。 在IntelliJ上基于gradle的android项目中configurationJUnittesting的更合适的方法是什么? 使用哪种目录结构?
在Eclipse中,我可以按Alt + Shift + J,并获得一个自动生成的字段,返回值或适用于特定javadoc注释的javadoc注释。 我假设IntelliJ IDEA有这个function。 任何人都可以告诉我,如果有这样的键盘快捷键?
我正在使用IntelliJ IDEA Pro 13.1.2。 从未使用13以下的任何版本。 当试图从IDE运行build.gradle我得到的消息: 模块不支持gradle 我可以从命令行运行这个脚本就好了。 “根”目录同时具有.gradle和gradle子目录,一般来说,它的结构与来自同一个项目的另一个模块非常相似,我可以从IDE运行它的构build而没有任何问题。 有关进一步故障排除的build议
我刚刚安装了IntelliJ IDEA,当我尝试创build我的第一个项目时,它要求我设置Project SDK。 当我点击“JDK”时,它会要求我selectJDK的主目录,如图所示。 我很难find它在哪里。
如何在IntelliJ IDEA 11.0中使用制表符替代多个空格进行缩进? 在“代码样式”>“常规”>“默认缩进选项”下选中 “使用制表符”。 并试图让“智能选项卡”选中,但没有帮助。 从文档 : 如果选中此checkbox,则使用制表符: 按下Tab键 对于缩进 用于代码重新格式化 否则,使用空格而不是制表符。
假设我们正在开发基于LinearLayout的复合组件。 所以,我们创build这样的类: public class SomeView extends LinearLayout { public SomeView(Context context, AttributeSet attrs) { super(context, attrs); setOrientation(LinearLayout.VERTICAL); View.inflate(context, R.layout.somelayout, this); } } 如果我们将使用LinearLayout作为somelayout.xml的根,我们将有额外的视图级别,所以我们使用合并标签: <?xml version="1.0" encoding="utf-8"?> <merge xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Some text" android:textSize="20sp"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Some other text"/> </merge> 但在IDE合并的预览选项卡中,总是充当FrameLayout,我们将看到类似这样的内容: (这是Android Studio,Intellij IDEA是一样的,关于Eclipse我不知道) 预览加速开发布局很多,即使对于一些布局,也不会失去这么大的帮助。 可能是有一种方法来指定,如何预览应解释merge标签在特定的布局?
我想用Intellij IDEA中的Gradle开始一个空的项目,但是看起来不像Eclipse那么方便。 我所做的是File-> New Project-> Gradle。 而一个项目显示,但没有完成(例如,它没有src文件夹)。 我在build.gradle中添加apply plugin 'idea' 。 当我参考IntelliJ IDEA中的所有任务时。 有没有idea,cleanIdea,ideaProject为我设立一个IntelliJ IDEA。 在Eclipse + Gradle插件中,只需创build一个新的Gradle项目,一切就绪。 我想知道如何在Intellij IDEA中做到这一点。 谢谢
尽pipe在所有项目设置(包括File -> Project Structure -> Project :: Project SDK )中都指定了JDK 1.7,当试图编译一些简单的使用菱形运算符的Java 7代码时, IntelliJ 13会产生以下错误: java: diamond operator is not supported in -source 1.5 (use -source 7 or higher to enable diamond operator) 在configuration中是否有其他地方需要启用期望的-source 7选项?