zoukankan      html  css  js  c++  java
  • kotlin 学习 三 maven 集成+java 互调用

    项目基于idea 生成,主要是说明使用方法

    环境准备

    • 项目结构

    • main.kt
    fun main(args: Array<String>) {
        val user: User =  User();
        user.age=333;
        user.name="dalong"
        println("this is my user ${user.name}  ${user.age}")
    }
    • User.java
    /**
     * @author dalong
     */
    public class User {
        private String name;
        private int age;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
    } 
    • pom.xml
      包含了依赖以及构建
     
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns="http://maven.apache.org/POM/4.0.0"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <artifactId>consoleApp</artifactId>
        <groupId>me.dalong</groupId>
        <version>1.0-SNAPSHOT</version>
        <packaging>jar</packaging>
        <name>consoleApp</name>
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <kotlin.code.style>official</kotlin.code.style>
            <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
        </properties>
        <repositories>
            <repository>
                <id>mavenCentral</id>
                <url>https://repo1.maven.org/maven2/</url>
            </repository>
        </repositories>
        <build>
            <sourceDirectory>src/main/kotlin</sourceDirectory>
            <testSourceDirectory>src/test/kotlin</testSourceDirectory>
            <plugins>
                <plugin>
                    <groupId>org.jetbrains.kotlin</groupId>
                    <artifactId>kotlin-maven-plugin</artifactId>
                    <version>1.4.10</version>
                    <executions>
                        <execution>
                            <id>compile</id>
                            <phase>compile</phase>
                            <goals>
                                <goal>compile</goal>
                            </goals>
                        </execution>
                        <execution>
                            <id>test-compile</id>
                            <phase>test-compile</phase>
                            <goals>
                                <goal>test-compile</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>2.6</version>
                    <executions>
                        <execution>
                            <id>make-assembly</id>
                            <phase>package</phase>
                            <goals> <goal>single</goal> </goals>
                            <configuration>
                                <archive>
                                    <manifest>
                                        <mainClass>MainKt</mainClass>
                                    </manifest>
                                </archive>
                                <descriptorRefs>
                                    <descriptorRef>jar-with-dependencies</descriptorRef>
                                </descriptorRefs>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>1.6.0</version>
                    <configuration>
                        <mainClass>MainKt</mainClass>
                    </configuration>
                </plugin>
            </plugins>
        </build>
        <dependencies>
            <dependency>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-test-junit</artifactId>
                <version>1.4.10</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-stdlib-jdk8</artifactId>
                <version>1.4.10</version>
            </dependency>
        </dependencies>
    </project>

    构建&&运行

    • 构建
    maven clean package
    • 运行
    java -jar target/consoleApp-1.0-SNAPSHOT-jar-with-dependencies.jar

    效果

    说明

    以上是一个简单的试用,实际互调用部分还是应该多看看官方文档

    参考资料

    https://kotlinlang.org/docs/reference/using-maven.html
    https://kotlinlang.org/docs/reference/java-interop.html

  • 相关阅读:
    class和struct
    类内初始值(c++11)
    默认初始化、值初始化
    聚合类
    对象
    排序算法的比较
    快速排序
    堆排序
    ubunu设置java命令为全局的命令-添加到全局环境变量
    Mina笔记
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/13943758.html
Copyright © 2011-2022 走看看