目前,我正在使用Eclipse开发Web应用程序.构建使用Maven完成.问题是在编译期间Eclipse出现了很多错误,因为有很多丢失的jar.最后的结果是好的,因为Maven负责取出这些罐子.
如何使eclipse不会失败编译?
我知道我可以将缺少的jar添加到项目类路径中,但这不是我想要的,因为我有很多项目,每个项目的.classpath文件都是所有开发人员共有的文件,所以我会而不是改变它.
我的问题是,有没有办法在不更改每个项目的类路径的情况下为所有Eclipse项目添加公共类路径?
我有一些包裹
com.company.testing.module1
com.company.testing.module2
com.company.testing.module3
Run Code Online (Sandbox Code Playgroud)
我也有一些有TestNG注释的类
com.company.testing.tests
Run Code Online (Sandbox Code Playgroud)
现在我把testng.xml放进去了
com.company.testing
Run Code Online (Sandbox Code Playgroud)
XML文件看起来像
<?xml version="1.0" encoding="UTF-8"?>
<suite name="Foo">
<test name="Bar">
<package>
<package name="com.company.testing.tests" />
</package>
</test>
</suite>
Run Code Online (Sandbox Code Playgroud)
如何从Eclipse运行该套件?我应该做什么运行配置?
我想加载类不在类路径中的类.有没有办法按文件路径加载类而不在classpath中?例如
ClassLoader.load("c:\MyClass.class");
Run Code Online (Sandbox Code Playgroud) 我正在努力让我的Java程序在AIX上运行.我在Windows上使用Eclipse创建了一个可运行的Jar文件,jRams.jar如下所示.我继续得到一个类未找到错误,直到最后我把所有外部库放在同一目录中.
$ ls
JAXB2_20081030.jar
JAXB2_20110601.jar
activation.jar
asjava.jar
commons-beanutils-1.8.3.jar
commons-beanutils-bean-collections-1.8.3.jar
commons-beanutils-core-1.8.3.jar
commons-codec-1.5.jar
commons-collections-3.2.1.jar
commons-configuration-1.6.jar
commons-digester-2.1.jar
commons-jxpath-1.3.jar
commons-lang-2.6.jar
commons-logging-1.1.1.jar
commons-logging-adapters-1.1.1.jar
commons-logging-api-1.1.1.jar
jRams.jar
jaxb-api.jar
jaxb-impl.jar
jaxb-xjc.jar
jaxb1-impl.jar
jremote.jar
jsr173_1.0_api.jar
log4j-1.2.16.jar
netty-3.2.4.Final.jar
$
Run Code Online (Sandbox Code Playgroud)
不过,我得到了类找不到错误.
$ java -jar jRams.jar
The java class is not found: com.jbase.jremote.JRemoteException
Run Code Online (Sandbox Code Playgroud)
jremote.jar肯定包含JRemoteException.为什么这不起作用?
UPDATE
感谢您的直截了当的答案.我现在更了解java应用程序和清单文件的本质.
事实证明我的ftp客户端是以ASCII模式而不是Binary传输的,因此jar文件已损坏.尽管如此,我学到了很多东西.
我正在尝试将JUnit和Spring结合在一个Web项目中。由于这个问题,我成功将spring config文件加载到TestClass中:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration
public class TwitterServiceTest {
@Resource
IRepository repository;
Run Code Online (Sandbox Code Playgroud)
但是当测试运行时,出现以下错误:
由以下原因引起:org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:无法找到XML模式命名空间的Spring NamespaceHandler [ http://java.sun.com/xml/ns/javaee]
我想问题可能出在库文件不在类路径中。当前,我使用Sysdeo Eclipse Tomcat插件 DevLoader进行加载工作(将jar文件从M2_REPO加载到类路径)。
该项目取决于许多库。关于如何解决此错误有任何想法吗?任何帮助将不胜感激。
我正在使用范围"提供"工件的pom文件的依赖项.由于"提供"范围,这些依赖关系jar不会添加到MANIFEST.MF的类路径中.
你可以帮助我,以便不应该下载罐子,但应该在classpath中添加.
是否可以使用JavaLoader获取由CF调用的Web服务返回的对象,并且加载JavaLoader的对象是相同的类路径上下文?我的意思是,没有太多困难?
// get a web service
ws = createObject("webservice", local.lms.wsurl);
// user created by coldfusion
user = ws.GenerateUserObject();
/* user status created by java loader.
** this api provider requires that you move the stubs
** (generated when hitting the wsdl from CF for the first time)
** to the classpath.
** this is one of the stubs/classes that gets called from that.
*/
UserStatus = javaLoader.create("com.geolearning.geonext.webservices.Status");
// set user status: classpath context clash
user.setStatus(UserStatus.Active);
Run Code Online (Sandbox Code Playgroud)
错误:
这是我的第一个Java应用程序,我对Java和NetBeans完全缺乏经验.
我一直在尝试连接到sql并获取一些记录2天.问题是关于jdbc驱动程序,让我解释一下.我已经下载了sqljdbc驱动程序,然后按照以下步骤操作:
右键单击Project-> Select Properties->在左侧单击Libraries-> Compile选项卡 - 单击Add Jar/Folder按钮并选择sqljdbc4.jar文件.那应该没问题吧?
然后我写了这段代码但是我无法摆脱这个异常:
Exception in thread "main" java.lang.ClassNotFoundException:
com.microsoft.sqlserver.jdbc.SqlServerDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at javaapplication1.JavaApplication1.main(JavaApplication1.java:30)
Run Code Online (Sandbox Code Playgroud)
这是代码
public static void main(String[] args) throws ClassNotFoundException, SQLException {
String url = "jdbc:sqlserver://.\\SQLEXPRESS;databaseName=Northwind; Integrated Security = SSPI ";
Connection con = null;
Statement stmt = null;
ResultSet rs = …Run Code Online (Sandbox Code Playgroud) 我不明白在jar文件的清单中设置类路径的规则.
我似乎让它工作,然后没有让它工作.从我到目前为止阅读的文档中我只知道你不能使用通配符
有人可以发布一个关于如何在jar文件中设置类路径的链接
我正在写一个maven 3插件,我想使用项目类路径.
我已经尝试使用添加maven-build-classpath中提到的方法来插件执行类路径,但似乎maven找不到写入的组件.(我有一个ComponentNotFoundException插件执行开始).
那么,在maven 3插件中使用项目类路径的"参考"方式是什么?或者,如果组件方式是正确的,那么除了将组件添加为注释的configurator属性之外,是否还有任何配置步骤@Mojo?
classpath ×10
java ×6
eclipse ×2
maven ×2
aix ×1
coldfusion ×1
coldfusion-9 ×1
compilation ×1
jar ×1
javaloader ×1
junit ×1
manifest ×1
maven-2 ×1
maven-plugin ×1
reflection ×1
spring ×1
sqljdbc ×1
testng ×1
web-services ×1