设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13702|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- s7 p# d! N: B) i
( [8 k; a3 y, L0 ]* l( Q5 W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) I' S6 P: D% p8 l# u/ a" q9 \+ g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 `4 V/ ?5 Q5 q- ~" m$ U! Z7 g! r' ~swarm.SignatureNotFoundException' ~- j+ E6 _- e* K% \; f+ q
        at swarm.Selector.<init>(Selector.java:76)# S* X/ X% i9 A( E  [0 q* y( @8 q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 a9 G; `1 F, a7 ?/ c9 v; \        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ ?3 w/ S0 E7 l: \# {$ Z

; E/ V+ K% R' [- n' f. A
9 f# x5 U0 S0 eimport swarm.objectbase.SwarmImpl;
* J, Q  W. U; J& M, P0 Eimport swarm.objectbase.Swarm;
: D7 t8 n3 \: l; g3 ?1 l; himport swarm.activity.ScheduleImpl;
9 j0 p- D' {9 K& simport swarm.activity.Activity;
/ f8 _% K7 o9 m" \- q$ Yimport swarm.activity.ActionGroupImpl;8 W; P0 K. Y& [! F
import swarm.collections.ListImpl;( l& c' [/ J, Z: N$ \9 P8 e9 A
import swarm.defobj.Zone; % z! @# r* \% w3 c6 [3 ^: m
import swarm.Globals;5 W$ j/ Y1 H8 U( `/ X$ \2 u
import swarm.Selector;. S/ l& n9 t: F4 i3 e9 }4 e
import swarm.activity.ActionGroup;
8 A! a. Z7 @3 E$ X# u  f( \/ V' G0 {class Agent {
7 i9 |: V# W$ g' N: h        char id;4 S2 b( k0 w1 }3 j. V, I9 i
/ Z" j- R$ L$ K$ Q$ J0 _/ M  I
        Agent(char id) {( p# X+ R0 Q0 h/ C7 h9 d* @
                this.id = id;
1 b8 ^4 z7 y6 u. _        }
1 P; Z* b8 e5 `0 k+ L5 g# i, \! P8 e  w: `) W7 {; [3 G) |
        public void agentStep() {
( J( d3 t+ a) D8 I! a8 M                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ Q& ]5 d( f  i8 A) I        }3 {9 n; |: B4 ^6 c! p
}
  C' y" W- ?7 Z  L
  o  I# P( Z  h( R* Ypublic class ActionGroupDemo extends SwarmImpl {
8 d9 `3 t  I  Y* Y& r; E        ScheduleImpl schedule;
1 L# \& a8 E2 M4 H! l7 D# _! s        ActionGroupImpl actionGroup;
+ l% D5 c6 I$ z. n) a& `/ F, v        ListImpl list;
; Q% p0 D( S# R0 Q8 `2 U        char Id = 'a';. m# m7 [7 r4 G4 O* q2 \" N6 S

1 U1 v! h0 z' T( @( b        ActionGroupDemo(Zone aZone) {: q0 [8 U' l1 }3 _1 T1 u
                super(aZone);9 x6 m: w7 v  I! G" h
                list = new ListImpl(aZone);
( B# j+ B4 P7 @. ?1 b                swarmSetp();" C# J# O/ @- u& X1 p
                actionGroup = new ActionGroupImpl(aZone);
6 Y: L% [1 L; ]8 }6 V! U( f1 l. B                schedule = new ScheduleImpl(aZone);# g1 s9 X5 R, [3 U
                try {
5 F6 `2 f" F+ j+ K3 Z! R6 \                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 F* ]7 `# J$ [8 ]& G, a
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; I  E1 B! T1 I& ^- p                        
6 W- J9 R* i9 |  m                        actionGroup.createActionForEach$message(list, agentSel);' H& e0 r3 w9 j4 A
                        actionGroup.createActionTo$message(this, swarmSel);8 y- R3 }; O2 V" `4 _% Y) J
                        schedule.at$createAction(0, actionGroup);
7 e" A. W% k) Y' V/ o, x                        schedule.at$createAction(1, actionGroup);" X5 Z6 Q1 L8 y, A  ~4 T0 O
                        schedule.at$createAction(2, actionGroup);
2 P- N1 W$ T  N1 e& r0 U0 t  E' ~% }8 m4 q7 l
                } catch (Exception e) {
' v0 V1 l4 B2 x$ w1 ]                        e.printStackTrace(System.err);) M9 e8 I  ~; U: i6 O' p, P
                        //System.out.println(e);
0 P" c& M$ [2 R1 M# s- G  |                        System.exit(1);
5 ?3 E6 t+ t5 c8 `$ m# i, j) Y+ M                }+ a. p7 e9 Q2 i* H4 p; L7 j! o
& [* g! d; J% D
  L  v. _$ g2 p% B* t
        }" c0 D* ~0 a' Y/ I( C

3 u: B& X" H% a5 v4 O        private void swarmSetp() {
7 B( \/ ~/ |3 q% [                list.addLast(new Agent(Id));  [2 e1 [: Q  [* |4 u7 [
                Id++;
: x" n, I; s% ]! x  S0 ~        }; v  f* z9 u/ [- h9 g

  b0 s' ^! W7 a' S        public Activity activateIn(Swarm context) {
& [2 l0 l# i) s/ |; K                super.activateIn(context);
& _9 }4 X8 p3 Y                schedule.activateIn(this);
# _/ i0 x& D! x! h                return getActivity();( Z+ F0 f3 L0 a8 M3 }! e- E1 U! W
        }) e/ F, p  _( T# \: r" h
& I: ]4 G; ~/ D% a" O5 Z& s8 M
        public static void main(String[] args) {! g' O9 e" H9 }5 `. I5 e& g
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 s6 s. @% d! N+ G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) f, x- ^) X7 A! _: m9 J% w( ^% }3 m                swarms.buildObjects();$ x" P7 Y; S3 @- R" T0 \
                swarms.buildActions();8 J0 S% `+ o6 B+ Z
                swarms.activateIn(null).run();
+ n! |6 d6 G7 l- p0 X) S# e) }2 i! K        }
) U3 V4 x) J* ?- M
* e9 d2 n+ C6 h7 V" A}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-14 23:53 , Processed in 0.016305 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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