设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5589|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , n6 N0 ~+ n: l& C
. v7 d' q: w& |, W7 c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! d3 H8 ~3 S9 S1 d7 p' A1 O+ T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& p  s, Y. Q1 H% m6 ?8 b7 g
swarm.SignatureNotFoundException
. ]6 Y* i. V+ w4 w, @% A        at swarm.Selector.<init>(Selector.java:76)
; g6 q3 ]  a0 }8 J        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 \% n, z0 V0 c4 w$ W6 M        at ActionGroupDemo.main(ActionGroupDemo.java:67)# L' K. {: H  c. y9 b' e
( Q: G/ K; T; c( P$ r0 ~1 L, d( v
) b/ l! I8 a* ]; ~; X( L0 f% C8 n
import swarm.objectbase.SwarmImpl;2 p+ ]/ L9 p( @& ?6 f+ c1 K
import swarm.objectbase.Swarm;* y: B. U4 h: d; \, r
import swarm.activity.ScheduleImpl;
' W+ A2 L: B& i1 H# |import swarm.activity.Activity;. ~8 d% X% P7 p& D+ m- ^7 {
import swarm.activity.ActionGroupImpl;0 m/ o: D* s& o3 H" U. l
import swarm.collections.ListImpl;
- m' L* |9 `2 s4 _( ]7 M# j# w/ nimport swarm.defobj.Zone; 6 @$ `( `2 a5 P: m% M2 B
import swarm.Globals;" t! m4 I- i  n# l3 e! A8 a, E9 i
import swarm.Selector;; O; J/ n7 @0 j; K3 K# q2 K
import swarm.activity.ActionGroup;
, c4 _6 V+ s' P9 G4 ]class Agent {
6 @% \+ m/ G# C/ ~* [& `        char id;
- r  k/ n6 F' m! j7 @3 u
0 k! t' h) G( Q( L! S. A8 L        Agent(char id) {/ U' Y3 J8 q7 b5 x
                this.id = id;
: T& `6 ^6 z3 m        }
$ T: p) |0 i4 I2 {" T# G8 H. T' s7 v: l0 p" `
        public void agentStep() {
4 e* D2 b1 E& |8 c8 K- m4 @                System.out.println(id + ":" + Globals.env.getCurrentTime());' v! Y" }. u1 m) e
        }" J; ?, a2 D5 [* k) s* W; A8 G
}
/ P" b& A% q/ Y3 z1 W. i4 {) ^; [0 @9 o3 L. U- |/ u) Y
public class ActionGroupDemo extends SwarmImpl {! ?2 \0 Y  Q) M: {2 c4 P
        ScheduleImpl schedule;0 s6 e9 a# `# |* Z# B- ^
        ActionGroupImpl actionGroup;
& J/ z) K8 v- z/ p$ t0 @9 D3 z, b        ListImpl list;
1 O9 L% t5 e" z' a% p6 D        char Id = 'a';
( u5 I, f' E9 j1 P" _* T+ h
- R4 m) h' n1 {; n( O. \        ActionGroupDemo(Zone aZone) {
2 T5 ^0 b6 ]+ i0 ^( G& r4 W                super(aZone);( u- d! q% _5 N9 p6 A4 k4 g+ P( R' u
                list = new ListImpl(aZone);
5 }4 X7 x/ C! B                swarmSetp();) k! ~4 ^2 k) }; d  ]( a
                actionGroup = new ActionGroupImpl(aZone);  L7 i) D; L6 r7 ^. M% t* t1 [+ L
                schedule = new ScheduleImpl(aZone);
2 u4 S" l8 E9 k, P. e8 V                try {
0 F* M. n3 ]" [. _5 P) C                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* J. F+ B) k7 r+ `( X' o# u7 b
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ j4 }! m, I. e( r$ b, v+ ]& o                        0 d2 F! ^0 f% ^( H- P4 ?
                        actionGroup.createActionForEach$message(list, agentSel);. j3 e3 h" ^+ x3 n  m: G
                        actionGroup.createActionTo$message(this, swarmSel);4 z  ]4 w& F" t$ t4 i) M, X! m
                        schedule.at$createAction(0, actionGroup);1 x5 M( w8 }1 @# V( s" V, p
                        schedule.at$createAction(1, actionGroup);, P( {! x% Q0 ?. E2 c
                        schedule.at$createAction(2, actionGroup);
* g1 _- C6 h5 a8 U$ `4 @
3 ?# D3 d) j$ X' Q* l# F                } catch (Exception e) {
% {3 X2 b2 ?7 M/ A4 u, S* X* L                        e.printStackTrace(System.err);
; q6 ]: s7 x* U                        //System.out.println(e);
. s, E* f- Z( f, q                        System.exit(1);1 e% K* I- K9 Z5 ~" M
                }3 J% O  k8 p, x9 i
3 U; F) K4 s7 }6 ], }
2 p. u: T" F3 m% b% X2 e
        }
9 W0 W' _: V% B9 X" B4 D8 b7 U
, b0 T' H2 h6 B, a        private void swarmSetp() {
, M& I5 S6 t0 S                list.addLast(new Agent(Id));3 |" W" T9 Y, V+ |3 x% ?1 x
                Id++;
3 K" a( b5 J2 @* i: m$ g1 d        }
; Q. {; N2 ^* ?4 K; W6 ]# ^
) V5 b3 o  o5 k0 r, n; M        public Activity activateIn(Swarm context) {2 C9 v2 M9 O5 P  O8 ^5 _' p- |
                super.activateIn(context);
* k0 j" Y- M% @9 P  F; C# @: m                schedule.activateIn(this);
* n& R! A4 F5 h3 k                return getActivity();
  u  o0 T7 @: a, B. r. |$ \) G% P        }
  R% @* j( l; Q, l" y. R2 R+ ^& W( c8 y$ |3 f0 j
        public static void main(String[] args) {7 I  G6 c. m; o
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 N& T3 F5 Z' j  |  B                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# P3 ]5 q+ V* A
                swarms.buildObjects();; E: v* b7 L* j+ A
                swarms.buildActions();
5 T% n  D, z# V, r                swarms.activateIn(null).run();
1 i( `  Q' A  T/ L% t) p        }
+ M) g9 E& _: I( d+ R, M" X" N/ h! T! I" c* ]1 U7 s" T
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-14 10:09 , Processed in 0.017237 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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