我正在尝试用Java构建一个项目,如果双击执行该项目将运行。那没有用,所以我用cmd进行了调试,清单中没有主类条目。
因此,我添加了此答案的内容(已通过我的应用程序):Missing Main-Class attibute in MANIFEST.MF in Maven generated jar file
我正在使用jenkins作为构建平台,并尝试使用mvn clean install和mvn clean package执行。
pom.xml:
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>
<groupId>de.progii</groupId>
<artifactId>pong</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>pong</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>de.progii.pong.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
参考方案
我部分解决了这个问题。问题不是maven jar插件,而是它的詹金斯。它只是存档错误的构建。可供下载的工件似乎在maven jar插件执行此工作之前就已存档。如果我使用sftp连接到workspace / target文件夹,则可以在jenkins下载页面上下载与工件相同名称的工件,但可以成功执行!
编辑
通过对Jenkins的最新更新,它可以正常工作
当我写下面的代码时,编译器说 无法从ArrayList<String>转换为List<Comparable>private List<Comparable> get(){ return new ArrayList<String>(); } 但是当我用通配符编写返回类型时,代码会编译。private List&l…
合并List <T>和List <Optional <T >> - java鉴于: List<Integer> integers = new ArrayList<>(Arrays.asList( 10, 12 )); List<Optional<Integer>> optionalIntegers = Arrays.asList( Optional.of(5), Optional.em…
实例化类型<?>的泛型类 - java我正在为SCJP / OCPJP学习,并且遇到了一个对我来说很奇怪的示例问题。该示例代码实例化了两个通用集合:List<?> list = new ArrayList<?>(); List<? extends Object> list2 = new ArrayList<? extends Object>(); …
List <Dog>是List <Animal>的子类吗?为什么Java泛型不是隐式多态的? - java我对Java泛型如何处理继承/多态感到困惑。假设以下层次结构-动物(父母)狗-猫(儿童)因此,假设我有一个方法doSomething(List<Animal> animals)。根据继承和多态性的所有规则,我假设List<Dog>是List<Animal>,而List<Cat>是List<Animal&g…
在HashMap <String,String>上循环时出现问题 - java我有一个基本的HashMap。我正在尝试遍历它,并从Map中获取键和值。这是我所拥有的:Map<String, String> myMap = versionExtractor.getVersionInfo(); for(String key : myMap.keySet()) System.out.println(key); System.ou…