设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12091|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) n% [; }9 j  b# l( `( N6 K- ^. O
- K' M. o8 \: }/ u( H  B& Q. S1 \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! r4 y1 Q: E: n* U; z' g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- ~" A9 i: e& M7 j/ P' b* R; L3 Qswarm.SignatureNotFoundException4 u! ~9 Y+ t0 j4 x
        at swarm.Selector.<init>(Selector.java:76)
5 `7 b# Q0 b. d. x        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; ^5 K5 C" F. e2 \7 }/ U) l% |/ r( ?        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 e, P( ?7 d5 k* o3 P+ ?( }. J7 _2 w6 S3 X' K( z

0 W' m7 ?. s5 M5 _4 Y; z& V3 \import swarm.objectbase.SwarmImpl;; _1 h1 P# H! m! V9 Z/ X; m2 ]
import swarm.objectbase.Swarm;& |, I7 W/ e$ p* A- s% V/ `
import swarm.activity.ScheduleImpl;
0 W/ S0 x. ?( t0 Timport swarm.activity.Activity;% P0 T' H' E9 B& H% E
import swarm.activity.ActionGroupImpl;$ O5 {0 V! [) U; ~2 Z4 p9 c) A
import swarm.collections.ListImpl;( ~' A8 V( @2 ~, O, |
import swarm.defobj.Zone;
" R+ _6 r8 _6 a4 }+ t3 R. G! R5 bimport swarm.Globals;' b! R, M$ K5 d) U7 X
import swarm.Selector;
6 e( L0 z" x# d" T& m8 qimport swarm.activity.ActionGroup;
1 Q) a2 W! \0 C' E8 S- pclass Agent {
( }- y& X; E+ {4 @( W        char id;* h' E3 ^8 o" J. Q
' u  o4 d  @7 b# {
        Agent(char id) {
: p$ a% q7 P; G% m                this.id = id;
7 K, z' b) E+ g& U* c( r        }3 G* p* m3 G/ i- F7 o6 g% u
. T# W, z+ G5 |5 O0 }$ b
        public void agentStep() {
% \- G2 v% _: a% ]( Z, X* z. S                System.out.println(id + ":" + Globals.env.getCurrentTime());
( k7 `% E2 z3 o! t. c& h. \        }" d. M; `1 p, f" F
}/ J9 [, p0 [, c# r' x# L8 B9 M  {
' G1 E+ K  }$ A% @
public class ActionGroupDemo extends SwarmImpl {4 `. L5 r7 }( W8 {) Y/ s/ ?9 r
        ScheduleImpl schedule;
* R) V) @/ I+ ~& l) |: C: m- h        ActionGroupImpl actionGroup;5 N. R! F; u1 ?$ ?2 R0 T
        ListImpl list;
: ^0 I% w+ l( u  E# B% e  H        char Id = 'a';# h0 K, N( w# b  n2 ^6 F3 }3 A
* f  E7 M) @* e1 ~3 h
        ActionGroupDemo(Zone aZone) {
1 k$ E% i! q+ Y7 S# ?                super(aZone);
/ ^: H- E' ?- v4 E9 w9 ?4 h% [( g                list = new ListImpl(aZone);
3 X9 C& i0 |' J6 I' c) |. {3 |                swarmSetp();3 ^( J6 q. |/ D9 f! c
                actionGroup = new ActionGroupImpl(aZone);
3 Q7 K) s" j' o3 g4 s                schedule = new ScheduleImpl(aZone);
3 b0 e( H  M( y( i( \# q, u                try {
& h( I( \  q4 P* X4 m2 d3 s5 o                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 G& J% R& K; L  f% A
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: V+ G* Q* p6 e                        
8 E* ?: Z* G+ r1 _                        actionGroup.createActionForEach$message(list, agentSel);/ e4 R1 X: K6 g9 p% u) Z
                        actionGroup.createActionTo$message(this, swarmSel);
+ M. w1 K; W4 Q$ H+ m6 C- B# V                        schedule.at$createAction(0, actionGroup);/ d* Y5 P6 v* }& P& W9 J7 s$ z  l6 }
                        schedule.at$createAction(1, actionGroup);
# D, f3 p$ O3 Z; U& c                        schedule.at$createAction(2, actionGroup);
4 B! T. g7 F, ~* h9 L) b; E# b+ i6 H6 w6 k" ]( [+ R
                } catch (Exception e) {
6 G5 i0 S% ^/ Y! b/ |; k                        e.printStackTrace(System.err);, I0 _  X5 Y! |9 Y
                        //System.out.println(e);: K8 C7 o- s! I7 [7 Y- N
                        System.exit(1);
; ]% a2 X) A% U$ o: R                }
- w7 B' }5 n* O! @) n5 w( D: k4 ?) x0 e2 M5 S7 c; b. M5 i! X8 x

/ l( n4 x  E( z' g. a  l        }8 m; b9 h$ c8 F/ P: R; ~' o1 K( B. `

! d5 W# K& |; ?# v        private void swarmSetp() {
1 \5 ~5 k: g" ]3 n4 m( I8 T                list.addLast(new Agent(Id));' `; y- d9 I: w
                Id++;
1 K: f7 W9 s& j& o" G+ k5 W7 y        }- u% y8 D7 D. b

7 Q3 |+ l  L% P8 g! m- A; G        public Activity activateIn(Swarm context) {
7 b4 o) E6 \5 i; c                super.activateIn(context);
: }3 n! g# |7 f0 X; L9 k                schedule.activateIn(this);, T! y/ o0 M) o' |8 u1 I
                return getActivity();* E0 F  T( W3 S7 ?, D
        }% O+ }2 \" ]/ Z) x9 a* }9 e
3 r% A! P$ s0 A; o% W7 }: b, e
        public static void main(String[] args) {* \- \" l- ~6 V: L% g" `8 D7 \
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, z* f* V2 Y8 Q* I3 a& x9 O. z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* Z! o  D# \& |9 ]; c
                swarms.buildObjects();
1 {% X, e' d. H                swarms.buildActions();7 a( T& V9 z0 }! K, z1 d+ e
                swarms.activateIn(null).run();
" m3 u6 B. v5 G8 F2 @- i        }
- n: N) }- J$ N, W* P. e" Y! n+ k  X) V! |3 H, k# j* g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-30 02:18 , Processed in 0.012543 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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