Tag: 路径

尽管设置了PATH和CLASSPATH,但无法执行jar文件

我的问题是关于在路径中包含jar文件。 它有两个部分。 1)我正在尝试执行位于/home/andy/software/weka/weka.jar中的weka.jar jar文件 PATH变量指向此jar文件(即/home/andy/software/weka/weka.jar),CLASSPATH也是如此。 但是,当我尝试使用java -jar weka.jar运行jar时,出现错误“无法访问jarfile weka.jar”。 有什么想法发生了什么? 我在Ubuntu Linux上。 我在SO中环顾四周,似乎我没有做任何明显错误的事情(因为PATH和CLASSPATH似乎都设置正确)。 2)我希望能够将我的所有jar文件放在一个目录中并在我的路径中包含该目录(而不是单独包含每个jar)。 我怎样才能做到这一点? 提前致谢。 编辑1 – >这是我的命令行 andy@laptop:~$ export CLASSPATH=$CLASSPATH:/home/andy/research/software/weka/weka.jar andy@laptop:~$ echo $CLASSPATH :/home/andy/research/software/weka/weka.jar andy@laptop:~$ java -jar weka.jar Unable to access jarfile weka.jar andy@laptop:~$ java weka.jar Exception in thread “main” java.lang.NoClassDefFoundError: weka/jar Caused by: java.lang.ClassNotFoundException: weka.jar at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) […]

Java属性,获取文件路径

logpath = LoggerUtils.getProperties().getProperty(“log.path”); System.out.println(“logpath: ” + logpath); 上面的代码返回: logpath: C:UsersMauriceDesktopLogs 在属性文件中是: log.path C:\Users\Maurice\Desktop\Logs 如何保留文件分隔符? 我希望这也适用于Linux,而不仅仅是Windows。

运行.jar时获取getResourceAsStream文件路径

我的代码: BufferedInputStream bis = new BufferedInputStream(getClass().getResourceAsStream(“playerhit.mp3”)); 当playerhit.mp3文件与运行它的MP3.class在同一个包中时,此代码可以正常工作。我将其运行为.jar。 如果我将文件路径更改为类似/src/data/audio/playerhit.mp3它就不再起作用了。 在以.jar身份运行时,是否仍然可以访问不同于文件包根目录的文件路径?

Java EE应用程序中的样式路径

我有一个Java EE应用程序,在应用程序中我有以下结构。 WEB-INF layout header.jsp styles main.css 我想在main.css中包含main.css 。 我试图用以下内容(其中……是路径): 但是,我似乎无法找到正确的道路。 我试过以下每一个都没有运气: ../styles/main.css /styles/main.css styles/main.css /WEB-INF/styles/main.css WEB-INF/styles/main.css 什么是正确的道路?

Servlet真实路径

我在目录博客下运行webapp。 (例如www.example.com/blog)。 我想获得一个请求的真实文件系统路径。 例如www.example.com/blog/test-file.html – > /usr/share/tomcat7/webapps/blog/test-file.html 我尝试了以下方法: public String realPath(HttpServletRequest request, ServletContext servletContext){ String requestURI = request.getRequestURI(); String realPath = servletContext.getRealPath(requestURI); return realPath; } 然而这又回来了 /usr/share/tomcat7/webapps/blog/blog/test-file.html 这样做的正确方法是什么?

Java附带的Transformer库将文件路径中的空格转换为%20

这是一个写出XML文件的测试应用程序。 为什么路径中的空格被转换为%20 ? public class XmlTest { public static void main(String[] args) { String filename = “C:\\New Folder\\test.xml”; try { DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document doc = docBuilder.newDocument(); TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); transformer.setOutputProperty(OutputKeys.INDENT, “yes”); transformer.setOutputProperty(“{http://xml.apache.org/xslt}indent-amount”, “4”); DOMSource source = new DOMSource(doc); File xmlFile = new File(filename); if […]

将Windows风格的路径转换为Unix路径

我想采用一个表示路径的字符串并将其转换为绝对的Unix风格路径。 这个字符串可以是Windows或Unix样式,因为它是调用MainClass.class.getClassLoader().getResource(“”).getPath() ,它根据您的系统返回不同的样式路径。 (我正在为我正在编写的游戏执行此操作,其中一部分为用户提供了一个简单的“bash-ish”shell,我希望用户能够读取文件。假文件系统存储为正常在我的项目的子目录中的目录树。这个文件系统将使用Unix风格的路径,我希望能够将输入的路径与前面提到的字符串连接起来(通过一些小的编辑将它放到正确的目录中)所以我可以找到文件的内容。) 我有什么想法可以这样做吗? 我尝试了很多东西,但我似乎无法让它在我朋友的Windows 7系统上正常工作。 目前我只是使用一个简单的东西来检查字符串是否以“C:\”或类似的东西开头,然后用斜杠替换反斜杠,但是这没有办法让它成为一个很好的方法来解决这个问题。 ,我相信其他人之前遇到过不同路径风格的问题。 这当然是一个非常临时的解决方案。

抽象路径在java.io中意味着什么?

在java doc中 File#getPath() 写道: Converts this abstract pathname into a pathname string. 我试着写1 File file3 = new File(“D:\\work”); System.out.println(file3.getPath()); 在cmd中我看到D:\\work 我试着写2: File file4= new File(“file4”); System.out.println(file4.getPath()); 在cmd我看到: file4 因此我有一个问题: 有什么区别 抽象路径名 和 路径名字符串 ?

IntelliJ无法识别PATH变量

我最近尝试导入现有的Gradle项目,使用启动窗口中的“打开项目”选项和现有的build.gradle文件来自动设置项目。 在我这样做之后,IntelliJ中出现了一条错误消息,说: 无法使用Gradle安装’/Users/myUser/Tools/gradle-1.3’获取类型’BasicIdeaProject’的模型。 构建文件’/Users/myUser/IdeaProjects/myProject/database/build.gradle’行:20评估项目’:database’时出现问题。 评估项目’:database’时出现问题。 在PATH中找不到’play’命令。 确保已安装Play Framework 2.0并在路径中 看起来,IntelliJ抱怨我没有将play框架添加到我的PATH变量中。 虽然shell的输出告诉某事。 其他: echo $PATH; /usr/local/bin:/Users/myUser/Library/Ruby/Gems/1.8/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/Users/myUser/.yadr/bin:/Users/myUser/.yadr/bin/yadr:/Users/myUser/Tools/gradle/bin:/usr/local/Cellar/mongodb/2.2.2-x86_64//bin:/Users/myUser/Tools/groovy/bin:/Users/myUser/Tools/play-2.0 我还写了一个简单的类来显示IntelliJ使用的PATH变量: public class Playground { public static void main(String[] args) { System.out.println( System.getenv( “PATH” )); } } 当我运行这个类时,它给了我以下输出: /usr/bin:/bin:/usr/sbin:/sbin 看起来,IntelliJ完全忽略了shell中设置的PATH变量。 所以我想知道如何操作/配置IntelliJ来识别这个PATH变量? 我使用的shell是zsh。 提前致谢

Java构建路径

当我打开eclipse时,我得到了1个Java构建路径问题:构建路径指定了执行环境JavaSE-1.6。 工作区中没有安装与此环境严格兼容的JRE。 现在我尝试查看答案和其他问题,但所有答案都是基于已经获得的有关编程等知识。 请帮我逐步解决这个问题。