设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12495|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 E; B# r# W$ u" a
2 C& \  ?# `$ O% {0 |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 x  ]" ]5 X0 A& ?: c1 v' z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: z+ V" m+ j+ ]swarm.SignatureNotFoundException5 i2 G: \8 M0 z/ w; y- h$ {: c& ~$ i
        at swarm.Selector.<init>(Selector.java:76)
( k: F& w: |6 @# L! `5 y6 W6 ^9 W        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): k! L0 U8 R5 N/ i9 c% g
        at ActionGroupDemo.main(ActionGroupDemo.java:67)% g) L7 G' m2 z2 H4 T
( n3 {: x' }2 l9 ^2 k' Q) ^' ]/ g
2 a/ [! @  e8 r3 U- M( y
import swarm.objectbase.SwarmImpl;
) p2 @3 {1 z+ E, H9 h7 D9 uimport swarm.objectbase.Swarm;& r1 T. A. a7 m4 ~) c& K/ G
import swarm.activity.ScheduleImpl;# l% U; {% k4 `5 O5 S4 l5 o: T
import swarm.activity.Activity;
1 N; y7 e5 }3 x, _9 P" Kimport swarm.activity.ActionGroupImpl;. F' ]) ]# q& |! a2 n1 Z. m
import swarm.collections.ListImpl;8 x. Y9 |9 s! ~
import swarm.defobj.Zone;   [* Y  t* z4 [" K1 E% D
import swarm.Globals;6 J/ d3 h# A' `
import swarm.Selector;
* B' L( q* ]7 P% p- N/ g6 Kimport swarm.activity.ActionGroup; ! M, v0 y8 A. S1 n
class Agent {- y) i, `1 A  U: f7 X; l" U
        char id;
. ]0 I0 g8 |) L: o0 Q) `7 s0 J
1 K0 [* }! Z% V. J' }& v! n2 I        Agent(char id) {
  B6 `% D5 h  x1 i, H                this.id = id;' ^& b- I  ~' F; u5 U
        }1 d1 S7 k8 E/ n( \1 b4 n" y

3 h3 P% Q2 q2 ^; C- }        public void agentStep() {$ C. X. D8 M' X" |
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* X1 Y$ A$ |2 X( }) S        }, u' U+ h+ `/ ?' V- h
}# d( m! M: s  r5 l) I( u
: l5 r3 S8 j7 V0 N
public class ActionGroupDemo extends SwarmImpl {' l7 S3 [- _( {* N
        ScheduleImpl schedule;9 Q' p& }' s& b  R. b6 |0 o; `
        ActionGroupImpl actionGroup;
' }4 s. h# }* e' z) h        ListImpl list;2 R, b. q" i+ V
        char Id = 'a';
9 T' _( P# ?9 r- s; S& O0 k$ L
$ [5 c* i3 e6 W, O$ T        ActionGroupDemo(Zone aZone) {- c) X; c; r  R$ F% Y  t
                super(aZone);
  ~0 l3 V. d, j8 R# r                list = new ListImpl(aZone);
: a6 Y) M0 B$ \: e! Z. ~                swarmSetp();
% g1 W: T. C- e  @/ s                actionGroup = new ActionGroupImpl(aZone);
( e3 g1 t; H) \1 b1 N5 ^3 p' E                schedule = new ScheduleImpl(aZone);
+ y3 L% i, m( z                try {3 g2 w- t7 {% x0 c5 M
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ [* J9 k$ @7 n. a4 x( h: m
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' z+ H$ q9 p& L& y) T: F
                        
/ T" H$ a& E! F                        actionGroup.createActionForEach$message(list, agentSel);
/ n7 b0 b' s4 p, E                        actionGroup.createActionTo$message(this, swarmSel);1 G$ v, ]( i; J) T2 m+ u
                        schedule.at$createAction(0, actionGroup);5 L1 Y5 s. W3 [
                        schedule.at$createAction(1, actionGroup);
& l% g  t$ H0 L$ J/ h                        schedule.at$createAction(2, actionGroup);
4 R) P. \9 R9 n! w5 _. p
, t( Z" r2 J) z6 Y                } catch (Exception e) {
  c, W8 F+ v; x; m. |4 n9 L                        e.printStackTrace(System.err);. s, k# p8 x: g9 Q! C% T+ x) P# \% y
                        //System.out.println(e);
% V3 s5 Z. I( J                        System.exit(1);4 a& ^6 [7 Q9 x( B
                }5 S4 O$ U. U- N. t/ M1 Q
9 F4 e/ e, T6 y; O4 d# L
) {: C5 `' v) `+ D' z+ K
        }
- p# X2 j+ Y$ q1 ]$ \6 W% A; y, \/ |: p1 R; K
        private void swarmSetp() {  V; D, I% M9 m
                list.addLast(new Agent(Id));, [2 Z2 _8 H1 @( o% L& U5 @
                Id++;# I  ]# r$ k  a
        }7 H( q. u" w) j. r- n

" X6 R" x* M8 H1 U6 p( t6 ]        public Activity activateIn(Swarm context) {; ~/ V; c1 v& Z" O3 m9 }. c$ y
                super.activateIn(context);
* o! d6 ^2 ]/ V                schedule.activateIn(this);* I8 I3 ~# W4 }, o" f
                return getActivity();
* @/ s( v8 M, B        }3 v1 k) s- H& L7 \+ u
. K9 b0 t3 |5 B" F5 S& H! J; L  o1 I* r
        public static void main(String[] args) {4 ?4 G( V: z& X7 m. R
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 i- j% B! M! n6 d, F                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ N6 R* L0 m, {
                swarms.buildObjects();
. z4 b0 v7 A) {; _7 S8 a                swarms.buildActions();
4 a4 H, `( z7 J9 R9 t: Y8 o                swarms.activateIn(null).run();7 W- \; w* a3 ^0 y" y- n: y9 ?
        }
% t, }' H1 K6 ]5 M- K6 |& |# }" D, R4 _# [
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-10 09:42 , Processed in 0.015367 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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