我有一个Java程序,Maven管理它的依赖项.其中一个依赖项是另一个程序的JNI包装器.Maven负责处理相关JAR文件的引用,但我自己还在搞乱DLL文件.
有没有一个让Maven处理DLL的好方法?理想情况下,我希望将DLL加载到我们的本地存储库中,如JAR文件.
我们的内部存储库(Artifactory)现在包含稳定版本以及内部库的SNAPSHOT版本.
对于稳定版本,从存储库中下载任何内容从未出现过问题.
但是,当我添加-SNAPSHOT时,Maven声称无法找到依赖项,即使它最明确地存储在存储库中.
如果我在本地构建和部署依赖项(即进入我的本地存储库),所有工作都正常.
基本上,这有效:
<dependency>
<groupId>com.example</groupId>
<artifactId>ourlibrary</artifactId>
<version>1.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
这不是:
<dependency>
<groupId>com.example</groupId>
<artifactId>ourlibrary</artifactId>
<version>1.0.1-SNAPSHOT</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
即使两个版本都以相同的方式构建并且(正如我可能告诉的)正确地部署到存储库.
错误:
Missing:
----------
1) com.example:ourlibrary:jar:1.0.1-SNAPSHOT,
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=com.example -DartifactId=ourlibrary -Dversion=1.0.1-SNAPSHOT, -Dpackaging=jar -Dfile=/path/to/file
Alternatively, if you host your own repository you can deploy the file there:
mvn deploy:deploy-file -DgroupId=com.example -DartifactId=ourlibrary -Dversion=1.0.1-SNAPSHOT, -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
Path to dependency:
1) com.example:product:war:2.0.0-SNAPSHOT
2) com.example:ourlibrary:jar:1.0.1-SNAPSHOT,
Run Code Online (Sandbox Code Playgroud)
虽然这听起来类似于这个问题,但到达那里的决议并不适用于我的情况.
任何有关这个问题的见解将不胜感激.
编辑
使用-X运行(如John V.所建议)显示以下内容: …
尝试.xlsx使用Apache POI 编写文件时,我收到以下异常:org.apache.xmlbeans.impl.values.XmlValueDisconnectedException
看来问题是第二次使用write()方法.使用HSSFWorkbook时,不会出现此问题.
这是代码:
public class SomeClass{
XSSFWorkbook workbook;
public SomeClass() throws IOException{
File excelFile = new File("workbook.xlsx");
InputStream inp = new FileInputStream(excelFile);
workbook = new XSSFWorkbook(inp);
inp.close();
}
void method(int i) throws InvalidFormatException, IOException {
XSSFSheet sheet = workbook.getSheetAt(0);
XSSFRow row = sheet.getRow(i);
if (row == null) {
row = sheet.createRow(i);
}
XSSFCell cell = row.getCell(i);
if (cell == null)
cell = row.createCell(i);
cell.setCellType(Cell.CELL_TYPE_STRING);
cell.setCellValue("a test");
// Write the output to a file
FileOutputStream fileOut …Run Code Online (Sandbox Code Playgroud) 例如,我第一次运行应用程序时(或者在我清除/ logs目录后立即),我希望log4j将应用程序的日志写入名为log.0的文件中.然后,我退出应用程序并重新启动它,我希望将日志写入log.1.等等.
我想在配置文件中保留它,但如果我不能,我想我可以在我的应用程序中,当设置log4j时总是这样做.
这可能吗?如果是这样,怎么样?
我在SOLR搜索中遇到了问题.
我有这样的数据:

我使用solr admin使用如下查询查找此数据:
address_s:*Nadi*
Run Code Online (Sandbox Code Playgroud)
并找到了那些数据.但是当我使用这个查询时:
address_s:*nadi*
Run Code Online (Sandbox Code Playgroud)
它没有找到任何东西.
我在Google上搜索,并找到了使用以下脚本创建字段的答案:
<fieldType name="c_text" class="solr.TextField">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
Run Code Online (Sandbox Code Playgroud)
我将这些脚本复制粘贴到schema.xml中,但它仍然不起作用.我该怎么办?谁能帮我?
我有一个相当大的程序,它使用Hibernate来满足其ORM需求.由于项目的年龄,它使用hbm.xml来配置它.我想将其转换为注释,但我在手动添加注释然后测试所有内容时,投资日期(周数?)各不相同.
有没有任何工具可以帮助促进这一点?
我正在使用swing编写应用程序.我需要通过单击JButton可以使用的for System.exit()或者我应该使用其他方法退出应用程序,这是最佳实践.如果调用System.exit()不是最佳实践,那么告诉原因并告诉退出应用程序的替代方法.
可能重复:
从Web应用程序打印到特定打印机
我们的一个Intranet应用程序需要打印到非默认打印机.当然人们经常忘记选择正确的打印机.
我知道你不能通过JavaScript正常做到这一点,但鉴于浏览器是IE9,我可以将webapp添加到受信任的区域(并随意调整安全设置),有没有办法编写JavaScript会自动选择正确的打印机吗?也许使用一些ActiveX或其他IE特定的东西.
java ×8
maven-2 ×2
activex ×1
apache-poi ×1
artifactory ×1
dll ×1
excel ×1
hibernate ×1
immutability ×1
javascript ×1
log4j ×1
ms-word ×1
solr ×1
swing ×1