spark任务scala的jar包无法找到主类

C++生涯 专栏收录该内容
13 篇文章 0 订阅

记录一次困扰良久的问题

编译之后运行 无论如何也无法找到主类入口。

死活认不出来,我这个是maven编译的编译标签方法如下

 <build>
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <!--下面必须指定好主类 如com.my.Main -->
                            <mainClass>spark.bim.SparkTest</mainClass>
                        </manifest>
                    </archive>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>8</source>
                    <target>8</target>
                </configuration>
            </plugin>
      <plugins>
<build>
        

狗屎一样难用的idea执行了mvn assembly:assembly后就是spark报错无法找到我定义的类。然后各种百度+谷歌搜了众多解决方案,尝试无果。

发现idea生成路径没有class文件,推测idea默认不编译scala语言

心中一万匹草泥马
解决方案如下

<build>
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <!--下面必须指定好主类 如com.my.Main -->
                            <mainClass>spark.bim.SparkTest</mainClass>
                        </manifest>
                    </archive>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>8</source>
                    <target>8</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>net.alchim31.maven</groupId>
                <artifactId>scala-maven-plugin</artifactId>
                <version>3.2.1</version>
                <executions>
                    <execution>
                        <id>scala-compile-first</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

果真是狗屎一样的idea,我都写了代码建了类添加到工程项目路径,凭啥你默认不给我编译,你这默认也太奇葩了吧,简直可以说是愚蠢。

从此idea一生黑,vs吹爆天。
就冲vs人性化的引导方式和智能提示以及一些默认约定合理性,足够吹爆天。

vs宇宙第一IDE,这次idea着实把我搞炸了,这一个问题困扰我好几天。IDE是给人提供方便不是冲着精简经量化就好的,许多人吹vs臃肿占地方,你是真没的黑了吧,vs个性化安装你不理全给勾上是大,再说了轻量化这个属性从来都不是工具的好坏衡量标准。(我给你一把泡沫锤子你去砸个钉子,试试,轻量化?呵呵)

  • 1
    点赞
  • 1
    评论
  • 2
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值