首页 文章 精选 留言 我的

精选列表

搜索[包依赖隔离],共10025篇文章
优秀的个人博客,低调大师

Gradle添加依赖及使用注解(添加插件)

一、基于Gradle可以构建很多项目,下面以Kotlin项目为例 package com.reflections import sun.management.Agent /** * @author:wangdong * @description:反射 */ /**定义一个person类*/ //通过poko注解生成无参构造的方法 //@Noarg class Person(val name:String,val age: Int) //默认是没有无参构造的 class DefaultConstructor() fun main(args: Array<String>) { //拿到class的2种方式 //1. val clazz = Person::class.java //new一个person实例 //2. val person = Person("wangdong",23) val clazz2 = person.javaClass val clazz3 = person::class.java val defaultConstructor = DefaultConstructor::class.java.newInstance() val person2 = clazz2.newInstance() //这个在没有添加@Noarg注解是不行的 } 二、在运行这个main方法的时候,会报异常 原因是Person类默认情况下是没有无参构造的 Exception in thread "main" java.lang.InstantiationException: com.reflections.Person at java.lang.Class.newInstance(Class.java:427) at com.reflections.JavaReflectionsKt.main(JavaReflections.kt:28) Caused by: java.lang.NoSuchMethodException: com.reflections.Person.<init>() at java.lang.Class.getConstructor0(Class.java:3082) at java.lang.Class.newInstance(Class.java:412) ... 1 more 三、在Gradle项目中引入插件并定义注解,以kotlin-noarg插件为例 改写build.gradle文件 buildscript { ext.kotlin_version = '1.2.30' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" //1.添加一个无参构造的插件 classpath "org.jetbrains.kotlin:kotlin-noarg:$kotlin_version" } } group 'net.kotlinreflects.com' version '1.0-SNAPSHOT' apply plugin: 'java' apply plugin: 'kotlin' //2.引用无参构造 apply plugin: 'kotlin-noarg' //3.配置注解,用来给class生成默认无参的方法的 noArg{ //配置类的路径 annotations "com.reflections.Noarg" } sourceCompatibility = 1.8 repositories { mavenCentral() } dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" testCompile group: 'junit', name: 'junit', version: '4.12' } compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" } 四、根据build.gradle类中的路径,写一个注解类 package com.reflections /** * @author:wangdong * @description:配置一个注解 */ annotation class Noarg 五、使用注解 将第一步中的注解开启 @Noarg class Person(val name:String,val age: Int) //默认是没有无参构造的 六、运行main方法 好了,就不会报错了,就完成了

优秀的个人博客,低调大师

maven 不依赖 jar(解决 jar 冲突 )

如图找到 含有该 jar 的 配置 然后 再pom 中 exclusions 掉 <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${hadoop_versoin}</version> <exclusions> <exclusion> <artifactId>javax.servlet.jsp</artifactId> <groupId>jsp-api</groupId> </exclusion> </exclusions> </dependency> 捐助开发者 在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和PayPal捐助),没钱捧个人场,谢谢各位。 谢谢您的赞助,我会做的更好!

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册