Tag: java

无法将Java堆大小设置为大于1568

我正在运行具有以下属性的服务器: Windows Server 2008 R2标准版 – 64位4GB RAM 我正在尝试将应用程序的堆大小设置为3gb。 我正在使用标志-Xmx3G -Xms3G。 使用标志运行会导致以下错误: 初始化VM时发生错误无法为对象堆保留足够的空间无法创建Java虚拟机。 我一直在玩设置,看看我的天花板是什么,发现1568是我的天花板。 我错过了什么?

GlassFish 4.1 alternatedocroot,Access静态内容

我需要使用此URL http:// localhost:8080 / static / img1.jpg访问一些图像 图像位于“/ home / andrea / Documents”中,应用程序上下文为“/”。 我正在使用GlassFish 4.1.1。 在项目的/ WEB-INF目录中,我有以下内容:(glassfish-web.xml) 问题是,找不到该文件。 我错过了什么? 是否有另一种方法来定义alternatedocroot`或映射项目外的虚拟目录?

如何使用java设置生成的pdf417条形码的宽度

嗨,我正在制作pdf417条码。 为此,我按照这个链接。 try { String a = “Microsoft”; String b = “wkejew”; PDF417 barcode = new PDF417(); barcode.setData(a+b); // barcode.setData(a); ServletOutputStream servletoutputstream = response.getOutputStream(); response.setContentType(“image/gif”); response.setHeader(“Pragma”, “no-cache”); response.setHeader(“Cache-Control”, “no-cache”); response.setDateHeader(“Expires”, 0); barcode.drawBarcode(servletoutputstream); } catch (Exception e) { throw new ServletException(e); } 所以现在问题是我得到的条形码有很大的宽度。 那么我可以减小宽度吗?

如何在java中打开文件之前等待windows进程完成

我有一个实现了一个监听器,通知我们是否在特定目录中收到一个新文件。 这是通过轮询和使用TimerTask实现的。 现在程序已设置好,一旦收到新文件,它就会调用另一个打开文件的java程序,并validation它是否是正确的文件。 我的问题是,由于轮询在指定的秒数后发生,可能会出现在该目录中复制文件并因此被Windows锁定的情况。 这会引发IOException,因为尝试打开它进行validation的其他java程序不能(“File正被另一个进程使用”)。 有没有办法让我知道Windows何时完成复制,然后调用第二个程序从java进行validation? 如果有人需要它们以帮助我,我将非常乐意发布代码片段。 谢谢

Glassfish在移动安装目录后挂起

我知道答案,但我在这里发布这个,因为作为一名应用程序开发人员,我被这个问题多次烧毁,并且花了很长时间才找到答案: 我已经移动了我的glassfish安装目录 ,现在它在启动时挂起。 我怎样才能解决这个问题?

如何在这里推断generics类型?

public static void main(String[] args) { Map<String, Map<Long, List>> map = getHashMap(); } static Map getHashMap() { return new HashMap(); } 我在google guava(作为工厂方法)中看到了类似的代码,用于制作Hashmap的实例而不提及generics类型。我不明白generics是如何通过上述程序推断的。我的意思是函数getHashMap如何理解类型因为我没有将任何类型的信息传递给函数。

使用maven2使用jdk1.5编译项目

我设法使用maven2创建我的项目结构。 但是在使用mvn install编译我的项目时,-source 1.3不支持获取错误generics 谷歌搜索使用jdk1.5构建我的项目并添加了构建标记 4.0.0 com.myProject project jar 1.0-SNAPSHOT myapp http://maven.apache.org junit junit 3.8.1 test com.myProject project 1.5 1.5 但这不起作用。 任何提示?

我对托管Java Web应用程序有何不理解?

我是Java的新手,我正在尝试使用Firebase托管Java Web应用程序 。 问题 我的问题似乎是我的java文件结构中不存在我的index.html文件。 因此,我不能在我的firebase.json文件中“指向它”。 题 我不了解如何托管Java Web应用程序? 部署java web应用程序时是否有index.html文件(显然,Firebase需要)? 如何成功托管我的Java Web应用程序? Firebase托管设置说明: 设置和安装 首次安装 您应该安装Node.js(您不需要运行Node,只需安装它) $npm install -g firebase-tools或$sudo npm install -g firebase-tools 更新以前安装的Firebase工具 $npm update -g firebase-tools或$sudo npm update -g firebase-tools 部署您的网站 $cd进入你的网站目录并运行$firebase init 然后使用$firebase deploy部署您的网站 我的错误信息: 当我按照托管说明浏览到https://my-example-firebase.firebaseio.com/ ,出现以下错误消息。 网页未找到 此文件不存在,并且在当前目录或根目录中的404.html中找不到index.html 。 我为什么看到这个? 您可能已为应用程序部署了错误的目录。 检查firebase.json并确保公共目录指向包含index.html文件的目录。 我的firebase.json { “firebase”: “my-example-firebase”, “public”: “.”, “ignore”: […]

在Multimap中检索特定值

我正在使用每个键有两个值的Multimap。 下面是我用来分别获取每个值的代码: 第一个代码获取第一个对象值: for(Object object : map.get(object)) { return object } 然后,我正在使用另一种方法来检索其他值。 此方法将第一个对象作为参数: for(Object object : team.get(object)) { if(object != initialObject) { return object; } } 这似乎是一种“hackish”做事方式,所以有没有办法让我更容易获得价值?

Java5 -XX:即使超过45%的堆是免费的,MaxHeapFreeRatio = 45也不会释放堆

我有一个带有以下参数的java应用程序,但即使总可用空间大于45%(通过可视VM可以看到),堆也不会被回收。 是否有任何理由让JVM无法释放堆空间? 相同的设置在Java6中按预期工作。 运行Java5运行时和编译时 java -jar -Xmx1024m -XX:MinHeapFreeRatio=15 -XX:MaxHeapFreeRatio=45 -XX:+HeapDumpOnOutOfMemoryError