设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7906|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ T; A+ [* P  n+ e1 a6 k
8 \0 Q) k. J* Z- S, \, g1 Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' M; P' K4 _$ }7 _# @* E8 k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) ^) P9 v( P' O% t1 [+ D; }
swarm.SignatureNotFoundException
1 c  C0 l; s' ~1 n' l0 K2 s        at swarm.Selector.<init>(Selector.java:76)+ I( Z+ t/ q1 W7 y) w
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# c: X: H1 V( g" }3 E  J0 f6 V# N        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* W8 Z' y: A' e4 f4 g- m" J/ N$ y: {7 y$ g; N" X6 O3 n2 @# F6 b8 j
  q' e/ ]' l7 s  S  k
import swarm.objectbase.SwarmImpl;& f- X5 f. B, `3 ^5 x
import swarm.objectbase.Swarm;
! A; A: f$ W" C4 g8 uimport swarm.activity.ScheduleImpl;
  W* M0 _( Z9 M; oimport swarm.activity.Activity;- I0 J* u; M, L
import swarm.activity.ActionGroupImpl;
5 ?- ~% m4 e' v9 }import swarm.collections.ListImpl;+ M& U# s, f: e& V; T. _3 q
import swarm.defobj.Zone; ' U6 q' K1 M1 r2 j
import swarm.Globals;/ T6 a! a: E  j( ~0 N
import swarm.Selector;% B0 d% j- R) B2 H# P& D
import swarm.activity.ActionGroup; 2 ~+ d8 F, x) p9 C
class Agent {! ]. o: t, h' y- V
        char id;
$ v; \  V# r5 \+ R: ]  v1 n* k' R7 V7 V4 e0 A# [9 m. x
        Agent(char id) {5 C' a$ A# v! ~% P
                this.id = id;
3 ?0 \, m4 A, I+ ~        }
8 Z% }4 D  E9 `
6 V, X6 _' ~! `9 ^        public void agentStep() {% y8 R# Q3 h( h; v' B) _
                System.out.println(id + ":" + Globals.env.getCurrentTime());# k6 y  Z6 R/ _5 E. v& r
        }+ B! r3 y* _2 S
}
: s- o" ~* S( ^: k3 H
9 N+ c+ x! F7 \  s. [1 e# F6 ppublic class ActionGroupDemo extends SwarmImpl {/ g: B' r1 n1 t
        ScheduleImpl schedule;4 ]. M4 y; [, H. `) |2 r& C
        ActionGroupImpl actionGroup;
( W8 C+ m2 b5 n" u* X        ListImpl list;
( b7 ?  M* c0 k* D; i& L        char Id = 'a';
5 B) d5 G2 c, ^- A& j/ j4 b
. `# V+ F/ v$ ?6 }3 [. T9 s  Z        ActionGroupDemo(Zone aZone) {% Z5 e2 F" G" C
                super(aZone);
7 u4 r5 e5 a. f, `9 [                list = new ListImpl(aZone);: {% S9 {' c/ |' g
                swarmSetp();  b) W% `, w' J% h0 w7 {2 G
                actionGroup = new ActionGroupImpl(aZone);
, |8 R" A( U6 G5 U& i                schedule = new ScheduleImpl(aZone);
) t+ [0 h$ J. _0 {                try {
3 @8 {6 u# Z# R                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ Q) D% {$ y$ [4 c9 X( ^2 f                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! ~. I) D& Y$ Y3 X+ e. @                        
7 d& Y; z- C1 n2 X' Q  f                        actionGroup.createActionForEach$message(list, agentSel);; a6 j4 r5 \+ K' O; s1 n
                        actionGroup.createActionTo$message(this, swarmSel);
, |" Q+ w! L) {- Y# n+ j) j. M                        schedule.at$createAction(0, actionGroup);" P+ c1 E3 N8 o) v, v
                        schedule.at$createAction(1, actionGroup);
  H* e8 J# e% ~& a0 Y/ ]' o6 r                        schedule.at$createAction(2, actionGroup);
5 y3 [( e7 o7 e: j2 p- C) B: i
1 V) Q  l' r+ @$ E( H; C                } catch (Exception e) {4 U5 S; l# M0 k; u4 J; ^2 \: M
                        e.printStackTrace(System.err);
1 w' R" T$ N$ N# n                        //System.out.println(e);
" W+ \, Z; j+ D- E- P                        System.exit(1);
" x0 P6 @& V) v0 p% Y                }
. F: e, ], B8 Y
: g2 m% B0 z4 n5 H
* G4 ]) s9 m- z6 \        }, t" N- L- b- J! M5 P8 M; u

: U% w/ ~  }0 C" C- j  z  O        private void swarmSetp() {
3 i1 M2 _2 t' }1 k" [. X' k2 N3 B6 ^                list.addLast(new Agent(Id));$ p" n/ b% C% t
                Id++;
- \. p. w/ s; H        }
! F) U" G! z  p6 N
5 i: E, Z  Z( I0 I/ O        public Activity activateIn(Swarm context) {
$ t2 z4 u2 J& q  M! s                super.activateIn(context);
6 X- p- y2 c! ^" G+ O                schedule.activateIn(this);* `% K) T. @+ N
                return getActivity();
, [  a, t1 @3 M        }
! M% B) \9 X2 Q( c; k6 ^2 s& W9 M) c& [
        public static void main(String[] args) {" C4 s, ^8 i7 f+ J# X+ X& o* m  b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ V( F! \- Y; u2 ]* Q5 G- t
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! Y4 {: d. H$ l- F; z! b, r: X                swarms.buildObjects();
3 O9 v1 Q; J( L6 w. ^, i                swarms.buildActions();+ S8 L  P- S9 K- k
                swarms.activateIn(null).run();
9 ?. y$ O5 j- O        }
, C2 H6 s  s/ O) m3 Q3 H* Q: l8 {' d% }) q1 |
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 22:47 , Processed in 0.019794 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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