设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13828|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : J4 _2 c) H! L& x! P

$ {5 y+ C1 m0 B7 m, q  g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' ?' D3 a2 d2 ^9 N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 `" P0 A0 n0 N9 D+ cswarm.SignatureNotFoundException
+ `! D2 I4 f" {; U2 E: k* |        at swarm.Selector.<init>(Selector.java:76)
2 O' ?0 [  ^1 x, s9 D0 {: x/ {! |        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; P9 z' d: |" Z* c0 S9 u0 X& w        at ActionGroupDemo.main(ActionGroupDemo.java:67)* W! f& w( i2 }7 [" h

5 ]9 N  E5 R& ?1 Y* j3 r, C8 v7 Z& U& F5 _( I, Y& E! u
import swarm.objectbase.SwarmImpl;# y, `: R6 c9 |/ Z9 @0 h7 Y( r- g
import swarm.objectbase.Swarm;8 j- b& y9 v# Q% `6 I- Q
import swarm.activity.ScheduleImpl;
& s( u6 i3 T  r0 n6 [8 ?7 l, c; G2 iimport swarm.activity.Activity;
( S, o' G% h( s& J5 g: i2 bimport swarm.activity.ActionGroupImpl;
2 l( J6 K! l/ c. `import swarm.collections.ListImpl;$ \; E$ C" s' u& P4 E+ n1 Q; P
import swarm.defobj.Zone; : G6 C( m( J! q/ C
import swarm.Globals;
2 d) h0 Q$ g+ m) n! U# s4 Yimport swarm.Selector;4 n4 u2 U5 Z8 d6 ~0 v
import swarm.activity.ActionGroup;
3 j6 D4 d" L) h2 M6 `) Mclass Agent {; d5 D( \) n2 S' G/ o
        char id;
3 ]% n2 A9 N; G) A& P
9 G7 {( I- q% s, q7 a        Agent(char id) {
' x) d( F" B9 S  f# _1 w; b                this.id = id;2 m  l/ r1 @; Z7 R* P
        }
9 d0 I& j& t$ X3 V8 n' \; A/ u
2 f3 \& w$ A4 E! [        public void agentStep() {  y4 K) e7 f  c3 h
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 Z6 E4 S' b( y* O5 \# V' E        }( a/ H# w- l' A# A9 b* D: O
}' d, W- y6 u+ J& d
  V) \8 p* E: S1 G6 h8 V
public class ActionGroupDemo extends SwarmImpl {
" [3 K6 Y3 X. b4 `8 }        ScheduleImpl schedule;
8 S' L6 l+ }1 C8 L        ActionGroupImpl actionGroup;
4 D+ }6 E5 a8 N5 V' l        ListImpl list;
1 j" ^: m+ L" `+ o# P% M        char Id = 'a';& G% r5 j  Q/ E4 I: h
- ?$ Q7 v# R7 B5 K; {6 E
        ActionGroupDemo(Zone aZone) {
4 }9 P* ]4 |  z3 ~                super(aZone);
1 k3 ?5 R) c$ ]                list = new ListImpl(aZone);
' \* w  r+ |8 _5 O' p1 S' a                swarmSetp();
' ]9 v/ f" B3 z5 w3 M# l- _5 |+ V                actionGroup = new ActionGroupImpl(aZone);+ |3 @. t8 r9 h# U. i) h
                schedule = new ScheduleImpl(aZone);* ~/ Q7 I$ J: @$ x! a- ]5 L; j
                try {
7 y% M& O1 U+ H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 S# D' u9 h- ^- D  Z+ {                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' ~2 |. U& k5 f$ y
                        
9 n5 O5 W# _6 }, o1 r                        actionGroup.createActionForEach$message(list, agentSel);
& i" ?+ r& V5 c) p% l& a                        actionGroup.createActionTo$message(this, swarmSel);6 s/ K: D8 n! ~, C" m7 k0 |
                        schedule.at$createAction(0, actionGroup);
6 M" f/ ^: t2 d( H                        schedule.at$createAction(1, actionGroup);4 x7 |6 n3 @' b2 w
                        schedule.at$createAction(2, actionGroup);' a- w" m" Y9 u9 c
- n- J. R) K( D  ~/ t: q* k( e! I
                } catch (Exception e) {
) }/ k1 H; S" s/ G; @9 w+ G6 C                        e.printStackTrace(System.err);
) ^2 w  v3 j1 s                        //System.out.println(e);
* u- p) _; u2 D3 n- P; j5 V) x* i                        System.exit(1);
; u3 e# E# }( {6 G& y                }' P! n1 @, P$ q2 c. p

4 x7 L1 s" g5 [! B+ o" X7 I- W* b5 }& C" z. I# E5 @
        }5 x" |) c3 f# l6 N( {2 r, T/ |' [/ ~

( A/ d. e/ x# B) w        private void swarmSetp() {( M' C7 Y$ B7 V# q4 k2 L
                list.addLast(new Agent(Id));
! R9 G9 Z) c6 c/ ]. {; ?                Id++;$ ~# M/ e2 @" q  Z5 R) S: G9 E5 W, ~
        }
/ X8 C0 l" T0 ?  B$ w% m3 M( ]' b) ]- J
        public Activity activateIn(Swarm context) {. r3 F1 E) c; l% a0 e
                super.activateIn(context);! R6 i) J2 N9 U1 s9 T
                schedule.activateIn(this);
* o. l" l1 H- _+ s                return getActivity();2 j" s3 F4 F; q( k7 I
        }
" G+ ], ~) S. V! \8 z6 {8 |' X1 F7 A' H
        public static void main(String[] args) {
+ ~2 R/ O* h# Z% T* [                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: D0 W5 r7 X1 `; X) h
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 g7 R; w2 G  z  s5 {8 g                swarms.buildObjects();( k: k) Z" d: ]/ ~6 x
                swarms.buildActions();
! _7 m9 _  }( ^                swarms.activateIn(null).run();
5 C8 N' ?" O5 W/ B3 s. H1 o; _: M0 L        }
6 c' X. R; o6 k" F5 @9 f/ j1 @
1 e3 L% c# L2 @0 I5 f* {% ^$ D' f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-18 21:37 , Processed in 0.014412 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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