设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5319|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) j* d8 K  c8 Q+ k$ F7 b. x) j% {6 w' b( L9 D2 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, h+ W2 o1 J0 U% }( m. F以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, E3 P! A) W3 w; E' h: ^5 Dswarm.SignatureNotFoundException) x' u  m& a& V# [, Q0 v- a
        at swarm.Selector.<init>(Selector.java:76)
" K6 z% t* w9 y% M) e3 Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 v: n* a/ o4 V: A% }        at ActionGroupDemo.main(ActionGroupDemo.java:67)& W; o' b- \# h3 }( I) q% ]
8 B3 V1 q9 [3 d8 z* Q7 R9 ^, U- n
1 P0 u2 M" ]. P& X" e# c
import swarm.objectbase.SwarmImpl;9 U! t' V+ r, l7 L& `+ z# w9 k
import swarm.objectbase.Swarm;% M6 T4 @. i6 H% X; f! ^8 o
import swarm.activity.ScheduleImpl;
  A! Z" A1 g: Q6 ?- Wimport swarm.activity.Activity;. ]0 [$ q) z- Q+ c9 B' N5 X
import swarm.activity.ActionGroupImpl;$ G, q9 ?2 Q$ B( a6 J3 b
import swarm.collections.ListImpl;7 A9 x- g. D* a$ j5 v5 i# W
import swarm.defobj.Zone;
8 e- `* b7 W6 h) N5 r  Limport swarm.Globals;
+ ]! [2 A! y/ s" d" k3 Uimport swarm.Selector;
5 c9 S5 d$ a3 E7 E+ ~* g; timport swarm.activity.ActionGroup;
1 G/ g7 P% l- P& m/ j( ~0 V$ \class Agent {/ }1 y* O( m, b5 y
        char id;
% J) ^* k: [, ?; x- |$ m7 W1 J
" |+ B& X1 F/ @5 v* D  I        Agent(char id) {
0 _5 s* z  Q, I                this.id = id;
* D1 R. T" }( x* p* a' [+ U2 W% u        }& E5 D3 p' M1 X2 C( k8 q8 e

- h1 W+ O! Z9 J& D! Z/ c- F% l, M        public void agentStep() {
& z( B; p1 N0 V8 s  T                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 ]1 [8 y- k. ~! K        }
0 P. g, {' l, R; I1 [}
- T7 ^( T3 Q4 a6 T' r1 f  P; \" G1 M- v  p
public class ActionGroupDemo extends SwarmImpl {4 a  c$ u1 }8 C8 q7 r
        ScheduleImpl schedule;
; L. C  @$ G  I6 a; f' t& S        ActionGroupImpl actionGroup;
1 z3 H% Y/ @2 X" L        ListImpl list;
; W& k* X2 Z$ H4 O: Z7 K        char Id = 'a';+ f  d/ d+ S# C  r" {  ]5 n; `
" W- A! X4 F7 X2 Y" |# j8 C5 {- H4 r, h: ^
        ActionGroupDemo(Zone aZone) {. ^( w- Z" s1 x; _, r. z
                super(aZone);
3 n7 h9 ]8 o# v0 n                list = new ListImpl(aZone);6 {/ S8 q2 B% u0 z# m% T3 N* o% @/ P
                swarmSetp();7 \. h* p6 R- B; X& r
                actionGroup = new ActionGroupImpl(aZone);
; y2 x( L7 h" y* [( o  I) n( V' K; u                schedule = new ScheduleImpl(aZone);' X8 c  F6 N* t# d+ b, D, B# v" m
                try {  I! a5 d' H/ k6 ^9 m' E$ Z& Y" l
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; u9 z2 Z& n" P3 Y: b
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  I: j0 W5 w$ x' o                        7 g8 S$ E+ v1 ]
                        actionGroup.createActionForEach$message(list, agentSel);
2 }5 B, `* ^7 M3 S& r7 }                        actionGroup.createActionTo$message(this, swarmSel);
+ t' a. o* j& X                        schedule.at$createAction(0, actionGroup);( \6 ~8 {) z- V7 C
                        schedule.at$createAction(1, actionGroup);+ ~" m7 b! ~) q- K- J7 |3 e+ Y! a
                        schedule.at$createAction(2, actionGroup);
0 ]4 |6 i$ U  S$ l$ g$ j. E6 y, N4 _* p/ e
                } catch (Exception e) {' [  B" E' ?; D- T: ]; C1 W
                        e.printStackTrace(System.err);: `0 x1 H' v) h" A
                        //System.out.println(e);3 L  |7 y1 @) F9 |
                        System.exit(1);
8 _+ y0 S  e0 h% W+ t                }
% a  ]4 z4 a1 N. Z; \4 M
0 O0 z, `2 q1 }; t: p, E% V. {
! s. W; ^$ @. P% m  `# i4 e        }8 C6 U  ~0 d0 j& {
* m# B) P+ t& s8 Q: u$ V% A. `
        private void swarmSetp() {# v$ G5 {# S$ K
                list.addLast(new Agent(Id));7 q6 i) _8 U; O0 `* |! Z* Q5 Z! S
                Id++;
. U3 B0 P  j. o" Z! W        }) e. |2 E2 P' w4 r& |* s/ P

/ n2 n7 ]4 Z% @% u& M        public Activity activateIn(Swarm context) {8 A! q$ a. N1 |2 W; k
                super.activateIn(context);
1 b- N- q% ^3 Z8 E  p                schedule.activateIn(this);4 F$ i" x2 I2 O* D; }
                return getActivity();: c' h3 P. \' q+ D
        }
+ h$ A8 {9 ]8 q4 I# k8 v  E" R# U4 k8 g( z5 W, M6 Y
        public static void main(String[] args) {
& o; ^+ s, j, L7 J7 k                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" k6 j( e) i( V' l- Q; D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& y0 F/ p2 T0 a! F! v
                swarms.buildObjects();
4 x2 E$ ]( a7 f& z. X- Z                swarms.buildActions();, T; j: s1 J) H6 q
                swarms.activateIn(null).run();+ Y0 k/ w, |8 i( H. i* C
        }
6 g0 u: }. w- I2 \, B0 ?0 ~* A6 O. n/ c; [
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-4 00:35 , Processed in 2.524054 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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