zoukankan      html  css  js  c++  java
  • springcloudAlibaba+nacos+dubbo服务部署到阿里云服务器中踩的坑

    首先你的阿里云服务器需要预先配置好:jdk环境,maven环境,mysql环境,nacos环境+其他项目需要的中间件环境(redis,zk等)
     
    踩的坑记录。
     
    1.
    第一个坑:本地把项目打包(maven install)之后放到阿里云服务器上执行java -jar xxx.jar报错:
     
    服务器上springboot项目启动时报错 no main manifest attribute, in XXX1.0.0-SNAPSHOT.jar
     
    <build>
      <plugins>
        <plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
      </plugins>
    </build>
    这是因为jar包启动的时候没有指定主类,在pom文件的build中加上上面的spring-boot-maven-plugin插件即可。
     
    2.
    第二个坑,配置好插件之后再执行:
    java -jar xxx.jar
    Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplication
    at com.xxx.config.xxxApplication.main(xxxApplication.java:23)
    Caused by: java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
     
    因为我的阿里云服务器没有配置maven,导致启动的时候报错
     
    3.maven装好
    启动maven 失败,由于我的阿里云服务器配置的是openjdk,更改 为oracle jdk,再配置下即可完成
     
    4.maven安装好后,启动dubbo服务成功。
     
    5.api服务本地启动后,请求阿里云nacos中注册的dubbo服务失败
    调试后发现nacos中注册地址为阿里云的私网地址。
    在dubbo服务的配置文件中加上
    spring:
    application:
    name: dubbo01-server
    cloud:
    inetutils:
    ignored-interfaces: eth.*
    preferred-networks: 阿里云的公网地址
     
    6.启动之后,nacos控制台中的注册地址就变成了公网地址。
     
    7.注意开通阿里云dubbo的端口

  • 相关阅读:
    Using CocoaPods
    IMPROVING IOS UNIT TESTS WITH OCMOCK
    梦想不为斗室所缚
    【转】class 'org.springframework.orm.hibernate3.LocalSessionFactoryBean' not found解决办法
    我们去工作是为了什么?——迈锡尼
    查看已保存的wifi密码
    点球成金
    研究生开口月薪一万 企业暗示“靠边站”
    程序员技术练级攻略
    Emacs是一种信仰!世界最强编辑器介绍 (转自王珢)
  • 原文地址:https://www.cnblogs.com/xwzp/p/13970057.html
Copyright © 2011-2022 走看看