我正在测试从2.2.1迁移到Maven 3.0.1.
除部署阶段外,所有阶段都运行良好.
当我第一次运行2.2.1时,一切运行正常.
然后我切换到3.0.1并运行相同的命令,一切顺利,除了最顶层的maven-metadata.xml文件.当maven尝试上传该文件时,我收到一个http错误:500.
如果您在下面的日志中注意到:
这失败了:
Uploading: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/0.0.1-SNAPSHOT/maven-metadata.xml
Run Code Online (Sandbox Code Playgroud)
但这成功了:
Uploading: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/maven-metadata.xml
Run Code Online (Sandbox Code Playgroud)
让我感到惊讶的是,我没有找到关于这个问题的更多信息.然后,maven 3只出现了大约8个月.
我发现这两个我不认为与我有关的问题:_http://maven.40175.n5.nabble.com/Created-MSITE-531-Site-deployment-fails-on-googlecode-repository-unnecessary-路径元素在-的WebDAV - td3307584.html
_http://maven.40175.n5.nabble.com/Moved-WAGON-319-Site-deployment-fails-on-googlecode-repository-unnecessary-path-element-in-WebDAV-UR-td3308501.html
我还尝试完全从'artifactory'中删除旧的工件并再次部署.
我希望有人能指出我在这里正确的方向.
我正在粘贴下面的相关信息.
提前致谢.
这是控制台输出的相关部分:
[INFO] --- maven-install-plugin:2.3.1:install (default-install) @ ThirdPartyDeploymentProject ---
[INFO] Installing D:\PRIVATE\src\experiments\CIMM-Building\ThirdPartyDeploymentProject\target\ThirdPartyDeploymentProject-1-SNAPSHOT.jar to C:\Program Files\apache-maven-2.2.1\repo\com\***\deployment\ThirdPartyDeploymentProject\1-SNAPSHOT\ThirdPartyDeploymentProject-1-SNAPSHOT.jar
[INFO] Installing D:\PRIVATE\src\experiments\CIMM-Building\ThirdPartyDeploymentProject\pom.xml to C:\Program Files\apache-maven-2.2.1\repo\com\***\deployment\ThirdPartyDeploymentProject\1-SNAPSHOT\ThirdPartyDeploymentProject-1-SNAPSHOT.pom
[INFO]
[INFO] --- maven-deploy-plugin:2.5:deploy (default-deploy) @ ThirdPartyDeploymentProject ---
Downloading: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/1-SNAPSHOT/maven-metadata.xml
Uploading: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/1-SNAPSHOT/ThirdPartyDeploymentProject-1-20110107.154227-1.jar
Uploaded: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/1-SNAPSHOT/ThirdPartyDeploymentProject-1-20110107.154227-1.jar (3 KB at 18.4 KB/sec)
Uploading: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/1-SNAPSHOT/ThirdPartyDeploymentProject-1-20110107.154227-1.pom
Uploaded: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/1-SNAPSHOT/ThirdPartyDeploymentProject-1-20110107.154227-1.pom (2 KB at 1.9 KB/sec)
Downloading: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/maven-metadata.xml
Downloaded: http://mvn.***.com:8080/artifactory/***-project-assets/com/***/deployment/ThirdPartyDeploymentProject/maven-metadata.xml (305 B at 0.4 KB/sec)
Uploading: …Run Code Online (Sandbox Code Playgroud) 考虑以下项目布局(假设A和B相互依赖):
.
|-- bin1
|-- bin2
|-- src1
| `-- A.java
`-- src2
`-- B.java
Run Code Online (Sandbox Code Playgroud)
编译后,我希望这些类驻留在各自的文件夹中:
.
|-- bin1
| `-- A.class
|-- bin2
| `-- B.class
|-- src1
| `-- A.java
`-- src2
`-- B.java
Run Code Online (Sandbox Code Playgroud)
从命令行可以很简单:
$ javac -implicit:none -sourcepath src1:src2 -d bin1 src1/*
$ javac -implicit:none -sourcepath src1:src2 -d bin2 src2/*
Run Code Online (Sandbox Code Playgroud)
如果这样配置,Eclipse也会这样做.但我无法弄清楚如何用Ant做到这一点.
附录:我目前的javac任务:
<javac destdir="${classes.1.dir}">
<src path="${src.1.dir}" />
<src path="${src.2.dir}" />
</javac>
<javac destdir="${classes.2.dir}">
<classpath path="${classes.1.dir}" />
<src path="${src.2.dir}" />
</javac>
Run Code Online (Sandbox Code Playgroud)
注意循环依赖.在第二个任务的效果很好,它只是编译什么的src2 …
我刚刚开始使用.where方法,我对如何充分利用它有点困惑.
我想做点什么:
@books = Book.where(:author_id => 1 || 2)
Run Code Online (Sandbox Code Playgroud)
显然我知道这不起作用,但我试图证明我想要一些额外的逻辑.一些"或""和""不等于"等.
我可以在哪里研究这个想法?我正在寻找rails API,但我没有看到任何有用的东西.
谢谢!
在使用capybara和selenium在rails中运行集成测试时,如果出现异常,则会显示空白页面而不是带有堆栈跟踪的常见异常屏幕.有没有办法让capybara显示堆栈跟踪页面?
我有一个包含大量列和类型列的表.
对于特定类型,某些列似乎总是为空.
我想为每种类型创建一个视图,并仅显示每种类型的相关列.假设如果某列只有特定类型的空值,那么这些列不应该是视图的一部分,那么如何通过查询找到它?
是否有SELECT [columnName] FROM [table] WHERE [columnValues] ARE ALL [null]
我知道我完全做到了......我只是想把这个想法贯穿其中.提前致谢!
我AlAssetsGroup enumerateAssetsAtIndexes用来列出照片(相机)应用程序中的资产.对于给定的视频资源,我想确定它是以纵向还是横向模式拍摄的.
在下面的代码,资产是一个AlAsset和我已经测试,看看它是否是一个视频资产[asset valueForProperty:ALAssetPropertyType]的AlAssetTypeVideo,则:
int orientation = [[asset valueForProperty:ALAssetPropertyOrientation] intValue];
Run Code Online (Sandbox Code Playgroud)
在这种情况下orientation,总是0 ALAssetOrientationUp.也许这是预期的,所有视频都是正确的,但是纵向视频在MPEG-4中表示为90度旋转的景观视频(即所有视频实际上都是风景,如果不是,请尝试使用Mac上的MediaInfo应用程序相信我).
文件中的位置和/或如何在纵向握住手机时访问告诉我实际记录的信息?
考虑到资产的网址,我也尝试了这个:
AVURLAsset *avAsset = [[AVURLAsset alloc] initWithURL:url options:nil];
CGSize size = [avAsset naturalSize];
NSLog(@"size.width = %f size.height = %f", size.width, size.height);
CGAffineTransform txf = [avAsset preferredTransform];
NSLog(@"txf.a = %f txf.b = %f txf.c = %f txf.d = %f txf.tx = %f txf.ty = %f",
txf.a, txf.b, txf.c, txf.d, txf.tx, txf.ty);
Run Code Online (Sandbox Code Playgroud)
这总是产生宽度>高度因此对于iPhone 4,宽度= 1280高度= 720并且变换a和d值是1.0,其他是 …
我正在尝试将所有请求重定向到域,从特定用户代理到子域.我的规则如下:
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^Test Agent/(.*)$ // <-- Line 4
RewriteRule ^(.*)$ https://test.domain.com/$1 [L,302]
Run Code Online (Sandbox Code Playgroud)
但是我在启动Web服务器时得到的是:
Syntax error on line 4 of /var/www/misafe/internal/misafe-old.conf:
RewriteCond: bad flag delimiters
Run Code Online (Sandbox Code Playgroud)
对我来说看起来不错,但我显然错过了一些东西而且错误并没有多大帮助.有任何想法吗?
谢谢,J
我正在验证表单上的输入并尝试根据所使用的控件组合提示用户输入不正确的输入.
例如,我有2个组合框和3个文本框.2个组合框必须始终具有除第一个(默认)值以外的值,但可以填充三个中的一个,或三个中的一个,或者可以填充所有文本框以使表单有效.
在一个这样的场景中,我有一个6行if语句,试图使测试易于阅读:
if ((!String.Equals(ComboBoxA.SelectedValue.ToString(), DEFAULT_COMBO_A_CHOICE.ToString())
&& !String.IsNullOrEmpty(TextBoxA.Text)
&& !String.Equals(ComboBoxB.SelectedValue.ToString(), DEFAULT_COMBO_B_CHOICE.ToString()))
||
(!String.IsNullOrEmpty(TextBoxB.Text)
|| !String.IsNullOrEmpty(TextBoxC.Text)))
{
//Do Some Validation
}
Run Code Online (Sandbox Code Playgroud)
我有两个问题:
是否应该不惜一切代价避免这种类型的if语句?
将此测试用另一种方法包装会更好吗?(这将是一个不错的选择,因为此验证将在多个场景中发生)
感谢您的意见!
这是我第一次在Objective-C中使用Protocols,我遇到了麻烦:这就是我所拥有的:
我有一个ReportsReceiver.h:
@protocol ReportsReceiver
-(void)receiveData:(NSArray *)theData;
@end
Run Code Online (Sandbox Code Playgroud)
我有一个MyController.h:
@interface MyController : UIViewController<ReportsReceiver,UITableViewDelegate,UITableViewDataSource> {
}
@end
Run Code Online (Sandbox Code Playgroud)
我有一个MyController.m与实现的方法:
- (void)receiveData:(NSArray *)theData {
NSLog(@"received some data!");
}
Run Code Online (Sandbox Code Playgroud)
然后我有一个AllUtilities.m类声明:
Protocol *receiverProtocol;
Run Code Online (Sandbox Code Playgroud)
AllUtilities.m还包含初始化协议的方法:
- (void)initProtocol {
receiverProtocol = @protocol(ReportsReceiver);
}
Run Code Online (Sandbox Code Playgroud)
然后在AllUtilities.m中我打电话:
[receiverProtocol receiveData:anArray];
Run Code Online (Sandbox Code Playgroud)
哪个应用程序崩溃了错误:
2011-01-07 11:46:27.503 TestGA[91156:207] *** NSInvocation: warning: object 0x9c28c of class 'Protocol' does not implement methodSignatureForSelector: -- trouble ahead
2011-01-07 11:46:27.504 TestGA[91156:207] *** NSInvocation: warning: object 0x9c28c of class 'Protocol' does not implement doesNotRecognizeSelector: -- abort
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?谢谢!!
我有一个字符串形式:
s = 'A - 13, B - 14, C - 29, M - 99'
Run Code Online (Sandbox Code Playgroud)
等等(长度不一样).从中创建字典的最简单方法是什么?
A: 13, B: 14, C: 29 ...
Run Code Online (Sandbox Code Playgroud)
我知道我可以拆分,但我无法得到正确的语法如何做到这一点.如果我分手了-,那我该如何加入这两个部分呢?
对此进行迭代似乎很痛苦.