设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13528|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 u0 l9 s7 I8 Z# F3 w/ ?
7 t3 z' W# I, a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ q6 x: U& s7 e9 k. ~. ?, F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 o' S7 \& Z" L- ~
swarm.SignatureNotFoundException
$ t  O- A4 U  i3 j- U$ ?        at swarm.Selector.<init>(Selector.java:76)9 g  x7 q6 x: K# g' {
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& ]5 D5 F& V- u6 b+ I$ n        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ E7 f4 u% q. a' o0 T6 i: ?7 a' D" z. `

6 r1 f# w7 d+ k8 }; Himport swarm.objectbase.SwarmImpl;1 b7 R; ?# I) Q. F9 u! U5 y; Q
import swarm.objectbase.Swarm;
4 i; J4 v3 X& }import swarm.activity.ScheduleImpl;3 [2 W8 r/ y; D- M+ n
import swarm.activity.Activity;
1 @2 K, H/ ^9 Q5 @+ \/ c( g4 g1 p' @  Nimport swarm.activity.ActionGroupImpl;% x0 C" G+ t' z0 U7 L: G" X/ H
import swarm.collections.ListImpl;
* U4 N+ P2 s+ u! y$ limport swarm.defobj.Zone;
8 ]+ `# ^1 E+ B% Q1 Q/ v7 bimport swarm.Globals;
8 H) a  ?5 L- kimport swarm.Selector;
% \/ C- R8 T3 vimport swarm.activity.ActionGroup;
! L: Q( P+ m) K7 }  d3 Q, ]) qclass Agent {/ s) d- L) V+ Y/ F/ {
        char id;
9 w9 r2 _1 E+ w) K6 o# |1 ?0 ?, z6 `" e4 `! ?9 t0 ]) p
        Agent(char id) {4 ^$ e0 l# C% P+ ?
                this.id = id;
- z, p, p- H( v0 z! v        }/ @" g4 s0 W7 n/ R7 G

* b, _0 y* j1 N4 w, P        public void agentStep() {
3 D" o  v, Y+ [                System.out.println(id + ":" + Globals.env.getCurrentTime());
# t' s  u( @  Y# P1 m+ I        }
1 _! \: l, F1 ?% L5 p}& X0 X3 w6 ~1 V5 u; t5 k1 X& _4 z

: c# c" y- d5 i, `' Spublic class ActionGroupDemo extends SwarmImpl {* t% O7 p- S0 @5 ?' }' b
        ScheduleImpl schedule;
/ X6 \7 @1 G- Y. f5 P% l        ActionGroupImpl actionGroup;
& ~3 A" ]- t; G* n        ListImpl list;% f% `. K' Q7 o7 M7 x0 R
        char Id = 'a';+ ~2 O# b& n, X( [4 R( P& B- X1 D
# t% M4 J/ I0 R; ^# Y* k' {6 I
        ActionGroupDemo(Zone aZone) {2 N. _+ A8 s  M; i0 G; f. V9 Q/ f' I
                super(aZone);4 F( x. j8 `9 T4 G& ?
                list = new ListImpl(aZone);
+ Y" Q! n' I8 u6 [6 \4 Y                swarmSetp();% Z( J  s4 B6 E& N3 m
                actionGroup = new ActionGroupImpl(aZone);0 Z! f1 y& j6 h( @# m% c+ p; `
                schedule = new ScheduleImpl(aZone);
, A6 c2 r$ O2 O" U2 S# ], i                try {
; l/ m( G5 u6 W7 r0 T2 \" h! T* q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 S) n! [: F3 I* n3 ?5 V
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* S  I8 B6 ]! h. A5 Y/ F                        
' h/ p: j: x' c! u* y2 e& {( E+ R                        actionGroup.createActionForEach$message(list, agentSel);5 }9 ^, t8 G$ o) o/ }
                        actionGroup.createActionTo$message(this, swarmSel);+ d' p7 k: R8 |# B& l
                        schedule.at$createAction(0, actionGroup);, k6 u( U6 @9 }! h% |! r, D# j2 ~0 I
                        schedule.at$createAction(1, actionGroup);5 `( m  w3 ^& Z- y1 C  H
                        schedule.at$createAction(2, actionGroup);- m3 j& w" j, U* E3 h
3 ]4 g0 i$ ~2 `# q& W+ n
                } catch (Exception e) {
7 p! ~% B9 k. M0 E                        e.printStackTrace(System.err);2 p+ z, ~( [+ A: T9 O, M6 {
                        //System.out.println(e);
' \3 N( s8 o( P2 ~. r                        System.exit(1);
0 K! B1 n& ^2 d                }3 Z- {; l" R) Z% g9 [; ?/ O

. M" b/ p  i# {8 X! X, j
" g% i5 U( p. O  N2 M        }: q; u& q- ~' b

" E( v# i- l) |- Q% V0 `        private void swarmSetp() {( P6 E, X; g  Y& K) T) H
                list.addLast(new Agent(Id));
, |3 K7 W6 U4 T4 [) E                Id++;* {4 T+ K, S- ]
        }
0 w! e7 A- L# g9 g6 ~7 }9 L+ f/ z# _( P- |3 _# p3 Q, u: a7 x" c
        public Activity activateIn(Swarm context) {" T! f7 d$ ^3 y# C4 t
                super.activateIn(context);# n8 r  n+ j9 k; z4 p. V
                schedule.activateIn(this);
- [6 P& l2 d. L/ c' O7 h! Z$ {                return getActivity();
9 p/ ^2 f1 G, p& N) i) \        }
, b/ t5 r! M& Q& F8 }; C
9 w1 t8 w  [( Z- D- m        public static void main(String[] args) {& C% W+ c) q  H/ G0 k* V2 l
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% g3 L$ E3 M& c
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! s4 U' ~( r9 D1 o; G8 N8 i                swarms.buildObjects();* @2 b8 j% f5 Z# ~
                swarms.buildActions();
% n, t% G. w! r1 Y                swarms.activateIn(null).run();1 k2 U( I! a# O9 X/ ]
        }$ c. @' s. T$ I9 A2 m
! }7 t. [9 y6 A5 I
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-9-10 00:21 , Processed in 0.014644 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表