小编jav*_*csw的帖子

将属性保存在JAVA格式的文件中

有没有办法使用Properties对象以一些格式保存Java中的属性?就像有没有办法在条目之间引入新的线条?或者每个键前的评论?

我知道这可以通过普通的I/O轻松完成,但想知道是否有一种方法可以使用属性对象.

java formatting properties

8
推荐指数
1
解决办法
2万
查看次数

有没有办法在复制依赖目标期间使用maven-dependency-plugin在测试和编译之间划分工件?

我有以下配置:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-dependency-plugin</artifactId>
  <version>2.6</version>
  <executions>
      <execution>
          <id>analyze</id>
          <goals>
              <goal>analyze-only</goal>
          </goals>
          <configuration>
              <failOnWarning>false</failOnWarning>
          </configuration>
      </execution>
      <!--Copy the dependencies so ant build has the same versions-->
      <execution>
          <id>copy-dependencies</id>
          <phase>package</phase>
          <goals>
              <goal>copy-dependencies</goal>
          </goals>
          <configuration>
              <outputDirectory>${project.basedir}/lib</outputDirectory>
              <overWriteIfNewer>true</overWriteIfNewer>
              <stripVersion>true</stripVersion>
              <overWriteReleases>false</overWriteReleases>
              <overWriteSnapshots>true</overWriteSnapshots>
              <excludeTransitive>false</excludeTransitive>
          </configuration>
      </execution>
  </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)

上面的配置会转储同一文件夹中的所有内容.我尝试通过添加测试配置来排除测试范围但是给出了错误:

未能执行目标org.apache.maven.plugins:Maven的依赖关系的插件:2.6:项目pcgen复制依赖(复制依赖):不能排除测试范围,这将排除一切.

有没有办法将测试依赖项与其他依赖项分开,以便我可以复制到不同的文件夹?

configuration maven-2 maven-dependency-plugin

8
推荐指数
1
解决办法
1047
查看次数

Java Application Bundled for Mac无法启动

我正在使用jarbundler 2.2.0,正如其他答案所建议的那样,因为应用程序应该由Apple在JRE 1.6上运行.

捆绑似乎是正确的,显示适当的图标,但点击它不会做任何事情.如果我进入它的内容并尝试双击指定的主文件的jar工作正常.

有没有办法看到发生了什么?我可以看到某种错误或日志?

编辑 请求的Info.plist.由于代码是私有的,我用Application替换了一些东西:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<plist version="1.0">
  <dict>
    <key>CFBundleName</key>
    <string>Application</string>
    <key>CFBundleShortVersionString</key>
    <string>2.2.0</string>
    <key>CFBundleGetInfoString</key>
    <string>Application version</string>
    <key>CFBundleAllowMixedLocalizations</key>
    <string>false</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleExecutable</key>
    <string>JavaApplicationStub</string>
    <key>CFBundleDevelopmentRegion</key>
    <string>English</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleVersion</key>
    <string>beta</string>
    <key>CFBundleIconFile</key>
    <string>SynamicD.icns</string>
    <key>CFBundleIdentifier</key>
    <string>net.sourceforge.javydreamercsw</string>
    <key>Java</key>
    <dict>
      <key>MainClass</key>
      <string>net.sourceforge.javydreamercsw.Main</string>
      <key>JVMVersion</key>
      <string>1.6.*</string>
      <key>ClassPath</key>
      <array>
        <string>$JAVAROOT/Application.jar</string>
        <string>$JAVAROOT/lib\lib1.jar</string>
        <string>$JAVAROOT/lib\lib2.jar</string>
      </array>
      <key>Properties</key>
      <dict>
        <key>apple.awt.textantialiasing</key>
        <string>true</string>
        <key>apple.awt.brushMetal</key>
        <string>true</string>
        <key>apple.laf.useScreenMenuBar</key>
        <string>true</string>
        <key>apple.awt.showGrowBox</key>
        <string>true</string>
      </dict>
    </dict>
  </dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

PkgInfo的内容:

APPL????
Run Code Online (Sandbox Code Playgroud)

在Application.app/Contents/MacOS上,我有Mac Machine的JavaApplicationStub.

产生的文件结构:

Application.app
|
---Contents
      |
      ---Info.plist
      ---PkgInfo
      ---MacOS
            |
      |      ---JavaApplicationStub …
Run Code Online (Sandbox Code Playgroud)

java macos bundle

8
推荐指数
1
解决办法
4662
查看次数

如何配置JPA以使用JNDI?

我有一个工作持久性定义,适用于Java级别测试.现在我想将它合并到一个Web应用程序中,该应用程序在context.xml中将数据库连接定义为JNDI.我需要更改什么才能使它与JNDI而不是persistence.xml一起使用,或者至少从那里获取信息?

persistence jpa jndi

7
推荐指数
1
解决办法
1万
查看次数

Vaadin:如何在战争中加入META-INF /服务?

我有一个Vaadin 7 maven web项目,它有一些注释可以创建服务定义META-INF/services.

我将其添加到pom中以便处理注释:

<!-- Run annotation processors on src/main/java sources -->
<plugin>
    <groupId>org.bsc.maven</groupId>
    <artifactId>maven-processor-plugin</artifactId>
    <version>3.3.1</version>
    <executions>
        <execution>
            <id>process</id>
            <goals>
                <goal>process</goal>
            </goals>
            <phase>generate-sources</phase>
        </execution>
    </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)

文件显示在内,target/classes/META-INF/services但没有进入最后的战争.

我尝试将文件夹添加到maven-war-plugin,如下所示:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>3.0.0</version>
    <configuration>
        <failOnMissingWebXml>false</failOnMissingWebXml>
        <packagingIncludes>target/classes/*</packagingIncludes>
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

但是大部分的Vaadin文件并没有进入战争,也没有用.任何的想法?

java war maven-3 maven vaadin7

7
推荐指数
1
解决办法
1318
查看次数

Vaadin在NetBeans中编译小部件(插件)

我按照提供的说明操作,但无法使用.我收到这个错误:

INFO: Widgetsets found from classpath:
com.vaadin.terminal.gwt.DefaultWidgetSet in jar:file:Z:/vaadin/vaadin-6.7.1.jar!/
org.vaadin.peter.contextmenu.ContextmenuWidgetset in jar:file:Z:/NetBeans/Xinco/2.01.xx/XincoLibs/ContextMenu3.1.0.jar!/

getAvailableWidgetSets
INFO: Search took 12ms
Exception in thread "main" java.io.IOException: The filename, directory name, or volume     label syntax is incorrect
at java.io.WinNTFileSystem.canonicalize0(Native Method)
at java.io.Win32FileSystem.canonicalize(Win32FileSystem.java:414)
at java.io.File.getCanonicalPath(File.java:589)
at com.vaadin.terminal.gwt.widgetsetutils.WidgetSetBuilder.updateWidgetSet(WidgetSetBuilder.java:79)
at com.vaadin.terminal.gwt.widgetsetutils.WidgetSetBuilder.main(WidgetSetBuilder.java:52)
Run Code Online (Sandbox Code Playgroud)

我发现了一个相关的错误,但它已被报道很长时间没有修复.除了自己检查/修改代码之外的任何想法?

编辑:仔细观察输出我注意到这个错误:

Compiling module org.vaadin.peter.contextmenu.ContextmenuWidgetset
Validating newly compiled units
  [ERROR] Errors in 'file:/Z:/NetBeans/Xinco/3.00.xx/XincoLibs/Vaadin%20Addons/ContextMenu3-1-0/org/vaadin/peter/contextmenu/client/ui/VContextMenu.java'
     [ERROR] Line 1: The declared package "org.vaadin.peter.contextmenu.client.ui" does not match the expected package "ContextMenu3-1-0.org.vaadin.peter.contextmenu.client.ui"
     [ERROR] Line 5: The import …
Run Code Online (Sandbox Code Playgroud)

netbeans compilation widget vaadin

6
推荐指数
1
解决办法
2327
查看次数

LucenePDFDocument是否已从pdfbox中删除?

我正在升级我的项目库,并将pdfbox从0.6.7升级到1.6.0版,找不到LucenePDFDocument类.Apache页面上的文档/教程中仍然提到了该类.有任何想法吗?

pdfbox

6
推荐指数
1
解决办法
2985
查看次数

Mercurial clone失败,系统无法找到指定的路径

我正在尝试发布:为我的Maven应用程序执行,并且当Mercurial checkout作为流程的一部分时,它会失败.从命令提示符处尝试相同的命令会失败,但会提供更多详细信息:

hg clone -r Simple-Marauroa-0.02.05 https://javydreamercsw@bit
bucket.org/javydreamercsw/simple-marauroa-java "Z:\NetBeans\Simple Marauroa\Simp
le Marauroa Java\Simple Marauroa Parent\target\checkout"
adding changesets
adding manifests
adding file changes
added 226 changesets with 3379 changes to 2264 files
updating to branch default
abort: Z:\NetBeans\Simple Marauroa\Simple Marauroa Java\Simple Marauroa Parent\t
arget\checkout\Simple Marauroa Parent/Card Game Interface DataBase Implementatio
n/src/main/java/com/reflexit/magiccards/core/storage/database/controller/CardCol
lectionHasCardJpaController.java: The system cannot find the path specified
Run Code Online (Sandbox Code Playgroud)

起初我以为该文件不在存储库中,但确实如此.如果你想知道Z,是一个USB驱动器,但我已经能够从同一个驱动器发布较小的项目.在我的桌面上执行相同的命令工作正常.

这是在Windows 7上完成的,它似乎与我猜的长路径相关.

任何的想法?

mercurial clone windows-7

6
推荐指数
1
解决办法
2618
查看次数

是否可以使用jar清单来使用文件夹中的所有jar

我正在尝试设置jar清单,以便将所有库(jar)加载到jar旁边的文件夹中.

清单看起来像这样:

Manifest-Version: 1.0
Class-Path: libs/
Main-Class: path.to.my.class.Main
Run Code Online (Sandbox Code Playgroud)

布局如下:

- MyJar.jar
- libs/
-----lib1.jar
-----lib2.jar
Run Code Online (Sandbox Code Playgroud)

而我正试图这样运行:

java -jar MyJar.jar
Run Code Online (Sandbox Code Playgroud)

并且我在文件夹中的jar中获取有关类的NoClassDefinition错误.

如果有人好奇,该文件夹可能包含在类加载期间处理的可选jar.那个'swhy我不能使用硬编码或自动生成的.

任何的想法?

更新重新 提出问题,因为目前无法从清单本身进行此操作.答案是唯一真正可行的,不需要提取罐子,虽然它也有效.

因此,总结答案是否定的,如果您有未指定的依赖项,则无法单独使用清单文件.

java dependencies jar manifest

6
推荐指数
1
解决办法
9029
查看次数

使用 JPA 备份数据库(设计)

我有一个工作代码,但并不总是有效。这是我的方法:

\n\n

创建备份

\n\n
    \n
  1. 为源数据库创建实体管理器
  2. \n
  3. 为目标数据库创建实体管理器(嵌入式 Derby 数据库)
  4. \n
  5. 复制实体(选择表的所有条目(现在对表顺序进行硬编码)并将它们复制到目标数据库。基本上是全选并从源分离实体并保留在目标上)
  6. \n
  7. 压缩嵌入式 Derby 数据库。
  8. \n
\n\n

从备份加载

\n\n
    \n
  1. 解压备份
  2. \n
  3. 执行备份
  4. \n
  5. 清理目标数据库(删除所有表)
  6. \n
  7. 复制实体
  8. \n
\n\n

在某些时候,我会使用 JPA 2 元数据来获取要复制的表并选择它们需要复制的顺序(由于约束)。

\n\n

由于某种原因,这种方法并不总是有效,因为我看到“丢失”的条目未恢复。

\n\n

这是代码:

\n\n
package com.bluecubs.xinco.core.server;\n\nimport java.io.File;\nimport java.io.FileInputStream;\nimport java.io.FileOutputStream;\nimport java.io.IOException;\nimport java.sql.DriverManager;\nimport java.sql.SQLException;\nimport java.text.SimpleDateFormat;\nimport java.util.Collection;\nimport java.util.Collections;\nimport java.util.Date;\nimport java.util.HashMap;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.logging.Level;\nimport java.util.logging.Logger;\nimport java.util.zip.ZipEntry;\nimport java.util.zip.ZipInputStream;\nimport java.util.zip.ZipOutputStream;\nimport javax.persistence.EntityManager;\nimport javax.persistence.EntityManagerFactory;\nimport javax.persistence.Persistence;\nimport org.apache.commons.io.FileUtils;\nimport org.apache.commons.io.filefilter.IOFileFilter;\nimport org.apache.commons.io.filefilter.TrueFileFilter;\n\n/**\n * This is a complex task and is heavily dependant on the architecture\n * of …
Run Code Online (Sandbox Code Playgroud)

jpa database-backups

5
推荐指数
1
解决办法
7427
查看次数