add android jps builder test stub
wtf
This commit is contained in:
committed by
Yan Zhulanow
parent
7c4661aba5
commit
1912b2b0ec
@@ -147,6 +147,7 @@ import org.jetbrains.jet.android.AbstractCrossParserTest
|
||||
import org.jetbrains.jet.lang.resolve.android.AbstractAndroidBoxTest
|
||||
import org.jetbrains.jet.android.AbstractAndroidCompletionTest
|
||||
import org.jetbrains.jet.android.AbstractAndroidGotoTest
|
||||
import org.jetbrains.jet.jps.build.android.AbstractAndroidJpsTestCase
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
System.setProperty("java.awt.headless", "true")
|
||||
@@ -750,6 +751,10 @@ fun main(args: Array<String>) {
|
||||
model("incremental/pureKotlin", extension = null, excludeParentDirs = true)
|
||||
model("incremental/withJava", extension = null, excludeParentDirs = true)
|
||||
}
|
||||
|
||||
testClass(javaClass<AbstractAndroidJpsTestCase>()) {
|
||||
model("android", recursive = false, extension = null)
|
||||
}
|
||||
}
|
||||
|
||||
generateTestDataForReservedWords()
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
package com.myapp
|
||||
|
||||
import android.app.Activity
|
||||
import android.os.Bundle
|
||||
import java.io.File
|
||||
|
||||
|
||||
class MyActivity: Activity() {
|
||||
val button = this.login<caret>
|
||||
public class MyActivity : Activity() {
|
||||
override fun onCreate(savedInstanceState: <caret>Bundle?) {}
|
||||
//val button = login
|
||||
val shit = File("")
|
||||
}
|
||||
|
||||
|
||||
@@ -41,12 +41,11 @@ public abstract class AbstractAndroidGotoTest : KotlinAndroidTestCase() {
|
||||
override fun requireRecentSdk() = true
|
||||
|
||||
public fun doTest(path: String) {
|
||||
val f = myFixture!!
|
||||
f.copyDirectoryToProject(getResDir()!!, "res")
|
||||
f.configureByFile(path + getTestName(true) + ".kt");
|
||||
myFixture!!.copyDirectoryToProject(getResDir()!!, "res")
|
||||
myFixture!!.configureByFile(path + getTestName(true) + ".kt");
|
||||
|
||||
val asf = GotoDeclarationAction.findTargetElement(f.getProject(), f.getEditor(), f.getCaretOffset())
|
||||
f.getEditor().toString()
|
||||
val asf = GotoDeclarationAction.findTargetElement(myFixture!!.getProject(), myFixture!!.getEditor(), myFixture!!.getCaretOffset())
|
||||
myFixture!!.getEditor().toString()
|
||||
fail("this test doesn't work yet")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
/*
|
||||
* Copyright 2000-2009 JetBrains s.r.o.
|
||||
* Copyright 2010-2014 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.jetbrains.jet.android;
|
||||
@@ -29,8 +29,15 @@ import com.intellij.facet.ModifiableFacetModel;
|
||||
import com.intellij.ide.startup.impl.StartupManagerImpl;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.module.ModuleType;
|
||||
import com.intellij.openapi.projectRoots.Sdk;
|
||||
import com.intellij.openapi.roots.ContentEntry;
|
||||
import com.intellij.openapi.roots.ModifiableRootModel;
|
||||
import com.intellij.openapi.roots.ModuleRootModificationUtil;
|
||||
import com.intellij.openapi.roots.OrderRootType;
|
||||
import com.intellij.openapi.roots.ui.configuration.libraryEditor.NewLibraryEditor;
|
||||
import com.intellij.openapi.startup.StartupManager;
|
||||
import com.intellij.openapi.vfs.VfsUtil;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.openapi.vfs.newvfs.impl.VfsRootAccess;
|
||||
import com.intellij.psi.FileViewProvider;
|
||||
@@ -39,18 +46,19 @@ import com.intellij.psi.impl.PsiManagerEx;
|
||||
import com.intellij.psi.impl.file.impl.FileManager;
|
||||
import com.intellij.testFramework.InspectionTestUtil;
|
||||
import com.intellij.testFramework.builders.JavaModuleFixtureBuilder;
|
||||
import com.intellij.testFramework.fixtures.IdeaProjectTestFixture;
|
||||
import com.intellij.testFramework.fixtures.IdeaTestFixtureFactory;
|
||||
import com.intellij.testFramework.fixtures.JavaTestFixtureFactory;
|
||||
import com.intellij.testFramework.fixtures.TestFixtureBuilder;
|
||||
import com.intellij.testFramework.fixtures.*;
|
||||
import com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl;
|
||||
import com.intellij.testFramework.fixtures.impl.LightTempDirTestFixtureImpl;
|
||||
import org.jetbrains.android.facet.AndroidFacet;
|
||||
import org.jetbrains.android.facet.AndroidRootUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.jet.JetTestCaseBuilder;
|
||||
import org.jetbrains.jet.lang.psi.JetFile;
|
||||
import org.jetbrains.jet.plugin.JetLightProjectDescriptor;
|
||||
import org.jetbrains.jet.plugin.JetWithJdkAndRuntimeLightProjectDescriptor;
|
||||
import org.jetbrains.jet.plugin.actions.internal.KotlinInternalMode;
|
||||
import org.jetbrains.jet.plugin.references.BuiltInsReferenceResolver;
|
||||
import org.jetbrains.jet.testing.ConfigLibraryUtil;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
@@ -82,53 +90,54 @@ public abstract class KotlinAndroidTestCase extends KotlinAndroidTestCaseBase {
|
||||
return "res/";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setUp() throws Exception {
|
||||
super.setUp();
|
||||
class LightAndroidProjectDescriptor extends JetLightProjectDescriptor {
|
||||
@Override
|
||||
public Sdk getSdk() {
|
||||
androidSdk = createAndroidSdk(getTestSdkPath(), getPlatformDir());
|
||||
return androidSdk;
|
||||
}
|
||||
|
||||
// this will throw an exception if we don't have a full Android SDK, so we need to do this first thing before any other setup
|
||||
@Override
|
||||
public void configureModule(
|
||||
Module module, ModifiableRootModel model, ContentEntry contentEntry
|
||||
) {
|
||||
NewLibraryEditor editor = new NewLibraryEditor();
|
||||
editor.setName("android.jar");
|
||||
editor.addRoot(androidSdk.getSdkModificator().getRoots(OrderRootType.CLASSES)[0], OrderRootType.CLASSES);
|
||||
|
||||
ConfigLibraryUtil.addLibrary(editor, model);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
String sdkPath = getTestSdkPath();
|
||||
|
||||
final TestFixtureBuilder<IdeaProjectTestFixture> projectBuilder =
|
||||
IdeaTestFixtureFactory.getFixtureFactory().createFixtureBuilder(getName());
|
||||
myFixture = JavaTestFixtureFactory.getFixtureFactory().createCodeInsightFixture(projectBuilder.getFixture());
|
||||
final JavaModuleFixtureBuilder moduleFixtureBuilder = projectBuilder.addModule(JavaModuleFixtureBuilder.class);
|
||||
|
||||
IdeaTestFixtureFactory factory = IdeaTestFixtureFactory.getFixtureFactory();
|
||||
//TestFixtureBuilder<IdeaProjectTestFixture> fixtureBuilder = factory.createLightFixtureBuilder(JetLightProjectDescriptor.INSTANCE);
|
||||
TestFixtureBuilder<IdeaProjectTestFixture> fixtureBuilder = factory.createLightFixtureBuilder(new LightAndroidProjectDescriptor());
|
||||
//final TestFixtureBuilder<IdeaProjectTestFixture> fixtureBuilder = factory.createLightFixtureBuilder(getName());
|
||||
final IdeaProjectTestFixture fixture = fixtureBuilder.getFixture();
|
||||
myFixture = IdeaTestFixtureFactory.getFixtureFactory().createCodeInsightFixture(fixture, new LightTempDirTestFixtureImpl(true));
|
||||
|
||||
final String dirPath = myFixture.getTempDirPath() + getContentRootPath();
|
||||
final File dir = new File(dirPath);
|
||||
|
||||
if (!dir.exists()) {
|
||||
assertTrue(dir.mkdirs());
|
||||
}
|
||||
tuneModule(moduleFixtureBuilder, dirPath);
|
||||
|
||||
final ArrayList<MyAdditionalModuleData> modules = new ArrayList<MyAdditionalModuleData>();
|
||||
configureAdditionalModules(projectBuilder, modules);
|
||||
|
||||
myFixture.setUp();
|
||||
myFixture.setTestDataPath(getTestDataPath());
|
||||
myModule = moduleFixtureBuilder.getFixture().getModule();
|
||||
|
||||
// Must be done before addAndroidFacet, and must always be done, even if !myCreateManifest.
|
||||
// We will delete it at the end of setUp; this is needed when unit tests want to rewrite
|
||||
// the manifest on their own.
|
||||
myModule = myFixture.getModule();
|
||||
|
||||
createManifest();
|
||||
|
||||
myFacet = addAndroidFacet(myModule, sdkPath, getPlatformDir(), isToAddSdk());
|
||||
|
||||
myAdditionalModules = new ArrayList<Module>();
|
||||
|
||||
for (MyAdditionalModuleData data : modules) {
|
||||
final Module additionalModule = data.myModuleFixtureBuilder.getFixture().getModule();
|
||||
myAdditionalModules.add(additionalModule);
|
||||
final AndroidFacet facet = addAndroidFacet(additionalModule, sdkPath, getPlatformDir());
|
||||
facet.setLibraryProject(data.myLibrary);
|
||||
final String rootPath = getContentRootPath(data.myDirName);
|
||||
myFixture.copyDirectoryToProject("res", rootPath + "/res");
|
||||
myFixture.copyFileToProject(SdkConstants.FN_ANDROID_MANIFEST_XML,
|
||||
rootPath + '/' + SdkConstants.FN_ANDROID_MANIFEST_XML);
|
||||
ModuleRootModificationUtil.addDependency(myModule, additionalModule);
|
||||
}
|
||||
|
||||
if (!myCreateManifest) {
|
||||
deleteManifest();
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@ import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.xml.XmlAttributeValue;
|
||||
import com.intellij.testFramework.IdeaTestCase;
|
||||
import com.intellij.testFramework.UsefulTestCase;
|
||||
import com.intellij.testFramework.fixtures.CodeInsightTestFixture;
|
||||
import com.intellij.testFramework.fixtures.JavaCodeInsightTestFixture;
|
||||
import org.jetbrains.android.dom.wrappers.LazyValueResourceElementWrapper;
|
||||
import org.jetbrains.android.sdk.*;
|
||||
@@ -53,7 +54,9 @@ public abstract class KotlinAndroidTestCaseBase extends UsefulTestCase {
|
||||
/** Environment variable or system property pointing to the directory name of the platform inside $sdk/platforms, e.g. "android-17" */
|
||||
public static final String PLATFORM_DIR_PROPERTY = "ADT_TEST_PLATFORM";
|
||||
|
||||
protected JavaCodeInsightTestFixture myFixture;
|
||||
protected CodeInsightTestFixture myFixture;
|
||||
|
||||
protected Sdk androidSdk;
|
||||
|
||||
protected KotlinAndroidTestCaseBase() {
|
||||
IdeaTestCase.initPlatformPrefix();
|
||||
@@ -136,7 +139,7 @@ public abstract class KotlinAndroidTestCaseBase extends UsefulTestCase {
|
||||
}
|
||||
|
||||
protected void addAndroidSdk(Module module, String sdkPath, String platformDir) {
|
||||
Sdk androidSdk = createAndroidSdk(sdkPath, platformDir);
|
||||
assert androidSdk != null : "android sdk must be initialized";
|
||||
ModuleRootModificationUtil.setModuleSdk(module, androidSdk);
|
||||
}
|
||||
|
||||
@@ -184,6 +187,11 @@ public abstract class KotlinAndroidTestCaseBase extends UsefulTestCase {
|
||||
}
|
||||
assertNotNull(target);
|
||||
data.setBuildTarget(target);
|
||||
data.setJavaSdk(PluginTestCaseBase.fullJdk());
|
||||
// Srsly, WTF? Why do i have to manually add jdk classes to android sdk roots? Even with setJavaSdk(PluginTestCaseBase.fullJdk())
|
||||
for (VirtualFile f : PluginTestCaseBase.fullJdk().getRootProvider().getFiles(OrderRootType.CLASSES)) {
|
||||
sdkModificator.addRoot(f, OrderRootType.CLASSES);
|
||||
}
|
||||
sdkModificator.setSdkAdditionalData(data);
|
||||
sdkModificator.commitChanges();
|
||||
return sdk;
|
||||
|
||||
@@ -23,5 +23,18 @@
|
||||
<orderEntry type="library" scope="PROVIDED" name="android" level="project" />
|
||||
<orderEntry type="module" module-name="util" />
|
||||
<orderEntry type="module" module-name="preloader" />
|
||||
<orderEntry type="module-library">
|
||||
<library>
|
||||
<CLASSES>
|
||||
<root url="file://$MODULE_DIR$/../ideaSDK/plugins/gradle/lib" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="file://$MODULE_DIR$/../ideaSDK/plugins/gradle/lib" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$MODULE_DIR$/../ideaSDK/plugins/gradle/lib" recursive="false" />
|
||||
<jarDirectory url="file://$MODULE_DIR$/../ideaSDK/plugins/gradle/lib" recursive="false" type="SOURCES" />
|
||||
</library>
|
||||
</orderEntry>
|
||||
</component>
|
||||
</module>
|
||||
|
||||
@@ -434,13 +434,15 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR
|
||||
}
|
||||
|
||||
private fun getAndroidResPath(module: JpsModule, context: CompileContext): String {
|
||||
val extension = AndroidJpsUtil.getExtension(module)!!
|
||||
val extension = AndroidJpsUtil.getExtension(module)
|
||||
if (extension == null) return ""
|
||||
val path = AndroidJpsUtil.getResourceDirForCompilationPath(extension)
|
||||
return File(path!!.getAbsolutePath() + "/layout").getAbsolutePath()
|
||||
}
|
||||
|
||||
private fun getAndroidManifest(module: JpsModule): String {
|
||||
val extension = AndroidJpsUtil.getExtension(module)!!
|
||||
val extension = AndroidJpsUtil.getExtension(module)
|
||||
if (extension == null) return ""
|
||||
return AndroidJpsUtil.getManifestFileForCompilationPath(extension)!!.getAbsolutePath()
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
* Copyright 2010-2014 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.jetbrains.jet.jps.build.android
|
||||
|
||||
import org.jetbrains.jps.builders.JpsBuildTestCase
|
||||
|
||||
public abstract class AbstractAndroidJpsTestCase : JpsBuildTestCase() {
|
||||
private val SDK_NAME = "Android_SDK"
|
||||
override fun setUp() {
|
||||
super.setUp()
|
||||
System.setProperty("kotlin.jps.tests", "true")
|
||||
}
|
||||
public fun doTest(path: String) {
|
||||
addJdk(SDK_NAME, getHomePath() + "/androidSDK/platforms/android-17" + "/android.jar")
|
||||
loadProject(path + getTestName(true) + ".ipr")
|
||||
rebuildAll()
|
||||
makeAll().assertSuccessful()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
* Copyright 2010-2014 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.jetbrains.jet.jps.build.android;
|
||||
|
||||
import com.intellij.testFramework.TestDataPath;
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
import org.jetbrains.jet.JetTestUtils;
|
||||
import org.jetbrains.jet.test.InnerTestClasses;
|
||||
import org.jetbrains.jet.test.TestMetadata;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/** This class is generated by {@link org.jetbrains.jet.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */
|
||||
@SuppressWarnings("all")
|
||||
@TestMetadata("jps-plugin/testData/android")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
public class AndroidJpsTestCaseGenerated extends AbstractAndroidJpsTestCase {
|
||||
public void testAllFilesPresentInAndroid() throws Exception {
|
||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("jps-plugin/testData/android"), Pattern.compile("^([^\\.]+)$"), false);
|
||||
}
|
||||
|
||||
@TestMetadata("simple")
|
||||
public void testSimple() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/android/simple/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.example.myapp"
|
||||
android:versionCode="1"
|
||||
android:versionName="1.0">
|
||||
<uses-sdk android:minSdkVersion="17"/>
|
||||
<application android:label="@string/app_name" android:icon="@drawable/ic_launcher">
|
||||
<activity android:name=".MyActivity"
|
||||
android:label="@string/app_name">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
<category android:name="android.intent.category.LAUNCHER"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
</manifest>
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
>
|
||||
<TextView
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="Hello World, MyActivity"
|
||||
android:id="@+id/LOL"/>
|
||||
</LinearLayout>
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="android" name="Android">
|
||||
<configuration>
|
||||
<option name="GEN_FOLDER_RELATIVE_PATH_APT" value="/gen" />
|
||||
<option name="GEN_FOLDER_RELATIVE_PATH_AIDL" value="/gen" />
|
||||
<option name="MANIFEST_FILE_RELATIVE_PATH" value="/AndroidManifest.xml" />
|
||||
<option name="RES_FOLDER_RELATIVE_PATH" value="/res" />
|
||||
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/assets" />
|
||||
<option name="LIBS_FOLDER_RELATIVE_PATH" value="/libs" />
|
||||
<option name="USE_CUSTOM_APK_RESOURCE_FOLDER" value="false" />
|
||||
<option name="CUSTOM_APK_RESOURCE_FOLDER" value="" />
|
||||
<option name="USE_CUSTOM_COMPILER_MANIFEST" value="false" />
|
||||
<option name="CUSTOM_COMPILER_MANIFEST" value="" />
|
||||
<option name="APK_PATH" value="" />
|
||||
<option name="LIBRARY_PROJECT" value="false" />
|
||||
<option name="RUN_PROCESS_RESOURCES_MAVEN_TASK" value="true" />
|
||||
<option name="GENERATE_UNSIGNED_APK" value="false" />
|
||||
<option name="CUSTOM_DEBUG_KEYSTORE_PATH" value="" />
|
||||
<option name="PACK_TEST_CODE" value="false" />
|
||||
<option name="RUN_PROGUARD" value="false" />
|
||||
<option name="PROGUARD_CFG_PATH" value="/proguard-project.txt" />
|
||||
<resOverlayFolders>
|
||||
<path>/res-overlay</path>
|
||||
</resOverlayFolders>
|
||||
<includeSystemProguardFile>true</includeSystemProguardFile>
|
||||
<includeAssetsFromLibraries>false</includeAssetsFromLibraries>
|
||||
<additionalNativeLibs />
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="jdk" jdkName="Androids_SDK" jdkType="Android SDK" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="KotlinJavaRuntime" level="project" />
|
||||
</component>
|
||||
</module>
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<option name="DEFAULT_COMPILER" value="Javac" />
|
||||
<excludeFromCompile>
|
||||
<directory url="file://$PROJECT_DIR$/gen" includeSubdirectories="true" />
|
||||
</excludeFromCompile>
|
||||
</component>
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/simple.iml" filepath="$PROJECT_DIR$/simple.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" assert-keyword="true" jdk-15="true" project-jdk-name="Android_SDK" project-jdk-type="Android SDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.example.myapp;
|
||||
|
||||
/**
|
||||
* Created by miha on 8/6/14.
|
||||
*/
|
||||
public class Foo {
|
||||
public static void main(String[] args) {
|
||||
System.out.println(R.id.LOL);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.example.myapp
|
||||
|
||||
import android.app.Activity
|
||||
import android.os.Bundle
|
||||
|
||||
public class MyActivity : Activity() {
|
||||
/**
|
||||
* Called when the activity is first created.
|
||||
*/
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(R.layout.main)
|
||||
println(R.id.LOL)
|
||||
fuck
|
||||
this.LOL
|
||||
LOL.setText("UIGFVIYUGFKGYUFOD")
|
||||
LOL.setText("test")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user