当前位置: 首页 > 知识库问答 >
问题:

Manifest.mf找不到org.junit

贺高杰
2023-03-14

我正在尝试使用Tycho为Eclipse RCP应用程序运行jUnit测试。

为此,我创建了一个简单的jUnit测试,当我单击Run as时运行

我在网上看到,我必须将jUnit添加到构建路径中。-

这是我的清单。MF文件如下所示:

    Manifest-Version: 1.0
    Bundle-ManifestVersion: 2
    Bundle-Name: Tests
    Bundle-SymbolicName: myPackageName
    Bundle-Version: 1.0.0.qualifier
    Bundle-Vendor: myCompany
    Fragment-Host: thePackageWhereTestesPluginIs
    Bundle-RequiredExecutionEnvironment: JavaSE-1.6
    Require-Bundle: org.junit

我的错误在哪里?当我使用org.junit4时,它也无法解决...

谢谢!

更新:

现在我使用代替 require-bundle:

    Import-package: org.junit4

(或者org.junit,其行为是相同的)并且它可以在manifest.mf文件中被解析。但是当我运行它时,我得到了下面的错误:[ERROR] -

我如何解决这个问题?

谢谢大家!!

测试包的我的pom文件:

<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">    <modelVersion>4.0.0</modelVersion>
<parent>
        <artifactId>myProject.tycho.master</artifactId>
        <groupId>myProject</groupId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath>../myProject.tycho.master/pom.xml</relativePath>
    </parent>
    <groupId>myProject</groupId>
    <artifactId>myProject.myTestBundle</artifactId>
    <version>1.0.0-SNAPSHOT</version>
    <packaging>eclipse-test-plugin</packaging>

<dependencies>
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.8.1</version>
</dependency>
</dependencies>
</project>

父pom:

    <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<modelVersion>4.0.0</modelVersion>
<groupId>myProject</groupId>
<artifactId>myProject.tycho.master</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>

<properties>
    <tycho.version>0.17.0</tycho.version>
</properties>

<modules>
    <module>../myProject.myTestBundle</module>

</modules>



<repositories>
    <!-- configure p2 repository to resolve against -->
    <repository>
        <id>Repository1</id>
        <layout>p2</layout>
        <url>url-to-a-p2-site-on-my-server</url>
    </repository>
</repositories>

<build>
    <plugins>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-maven-plugin</artifactId>
            <version>${tycho.version}</version>
            <extensions>true</extensions>
        </plugin>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>${tycho.version}</version>
            <configuration>
                <resolver>p2</resolver>
                <pomDependencies>consider</pomDependencies>
                <target>
                    <artifact>
                        <groupId>myGroupId</groupId>
                        <artifactId>myGroupId.target</artifactId>
                        <classifier>targetPlatform</classifier>
                    </artifact>
                </target>
                <environments>
                    <environment>
                        <os>macosx</os>
                        <ws>cocoa</ws>
                        <arch>x86_64</arch>
                    </environment>
                    <environment>
                        <os>linux</os>
                        <ws>gtk</ws>
                        <arch>x86</arch>
                    </environment>
                    <environment>
                        <os>linux</os>
                        <ws>gtk</ws>
                        <arch>x86_64</arch>
                    </environment>
                    <environment>
                        <os>win32</os>
                        <ws>win32</ws>
                        <arch>x86</arch>
                    </environment>
                    <environment>
                        <os>win32</os>
                        <ws>win32</ws>
                        <arch>x86_64</arch>
                    </environment>
                </environments>
                <ignoreTychoRepositories>false</ignoreTychoRepositories>
            </configuration>
        </plugin>
    </plugins>
</build>
    </project>

更新:我想我解决了问题!我将jUnit添加到我的p2更新站点,现在我没有收到任何错误!

共有1个答案

叶谦
2023-03-14

我通过将jUnit添加为p2更新站点来修复我的问题,并在Manifest.mf中将其用作:

Require-Bundle: org.junit; bundle-version = "4.11.0"
 类似资料:
  • 我得到以下Tomcat错误: 发布到Tomcat v8.5 Server atlocalhost...遇到问题。发布失败并出现多个错误。 细节: 发布失败,出现多个错误 找不到文件:C:\Users…\HerramentationLogica\target\m2e wtp\web资源\META-INF\MANIFEST.MF。 未找到文件:C:\Users…\HerramentationLogic

  • 我正在使用Netbeans构建一个jar。当我按f6时,项目在NetBeans中运行良好。但是,如果我进入我的/dist/文件夹并尝试运行。jar,它就像打开一个。zip一样打开它。如果我尝试从命令行运行项目,我会得到“无法找到main Class”错误。但是,如果我浏览。jar并查看META-INF/MANIFEST.MF文件,我可以看到它确实描述了其中的一个主类。

  • 我是一名学习使用jsp和Servlet构建Web应用程序的学生。一个月以来,我的Web应用程序项目一直运行良好,但今天它的行为突然变得奇怪了。当我提交jsp页面时,它无法找到我的servlet。我已经使用servlet注释来映射请求。 以下是我的JSP:- 以下是我的servlet:- 以下是我的控制台日志:-

  • 问题内容: 我正在运行Windows 8,但无法使javac正常工作。 我已将环境变量中的PATH设置为 我尝试过是否使用’;’ 但无济于事。 我最近在桌面上添加了这个问题;工作,但不是这种情况。 我确保javac确实也存在于bin中。 关于修复的任何建议将不胜感激。 编辑echo%PATH%给出: 确切的错误是:无法将“ javac”识别为内部或外部命令,可操作程序或批处理文件。 问题答案: 至

  • 问题内容: 我正在为我的项目使用jersey,并尝试从字符串中解析URI。 代码很简单,但是下面出现错误 看来程序找不到委托。我已经导入了,并且应该在我的构建路径中包含委托。但我仍然会收到此错误。 有人知道如何解决吗?谢谢! 问题答案: 如果您使用的是Maven,请使用以下依赖项: 对于Gradle,以下将起作用:

  • 问题内容: 我只需要重新安装mysql,我就无法启动它。它找不到套接字(mysql.sock)。问题是我也不能。在Mac OS X 10.4终端中,键入:,然后返回。套接字文件存在于该位置是有道理的,但实际上并不存在。 如何找到套接字文件? 如果locate返回错误的位置,则它必须具有某种内存,并且可能具有索引。如何刷新该索引? 问题答案: 回答问题的第一部分: 跑 并检查“ socket”变量