设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7771|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ R( G8 }% [1 {9 \& ^0 l7 M1 q6 q2 Z% q- N& z  W  d9 D. }' s9 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) A4 Y1 Q. {% y8 @& ^+ U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  C- A4 R3 n# m' o' X& k
swarm.SignatureNotFoundException' W0 z# n, A, F. y
        at swarm.Selector.<init>(Selector.java:76)7 C$ N& \8 s4 e; ]. `
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 W7 E5 J, l% _8 K, X% {
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  @2 V' [6 G0 Q% Q+ y" z' Y$ J( M

0 t" u- b. d: s8 r. R8 D$ Aimport swarm.objectbase.SwarmImpl;( I; Q4 q4 s2 C+ @" }( \
import swarm.objectbase.Swarm;: S5 {% T3 g  U: k) d- a) U+ H
import swarm.activity.ScheduleImpl;
: t- u" I- E4 R1 o$ G5 C% T. i5 uimport swarm.activity.Activity;5 c1 K4 H& Z3 Q3 [( o
import swarm.activity.ActionGroupImpl;
& L9 w6 W7 b  P# J" k( b8 iimport swarm.collections.ListImpl;
/ U0 c2 s% ^4 S! J! H* L6 Himport swarm.defobj.Zone; ' _8 V: H# Q" N) t7 Z
import swarm.Globals;
% d- U4 N- S% Pimport swarm.Selector;+ ~( I) e5 r8 a8 y7 c
import swarm.activity.ActionGroup;
2 v& ^: Y" `/ J9 P, cclass Agent {+ B9 h, f4 U  _6 N2 t! K$ J1 M4 g
        char id;8 {; k/ I! x# [

& _' n9 E) L" W3 ~) ]        Agent(char id) {
0 M0 a! c. N7 \+ S" l                this.id = id;
' u, J5 B& T# H# D* n- y        }" e: |, D( A% d4 j" P9 \1 r' m
; ^: s5 B7 g- u. _4 T
        public void agentStep() {5 d( y( l  q1 l: Z5 Y
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ E+ A: E  [8 m$ k, Y$ K        }5 C  p# q! j& A) B" o# b- I
}
4 G0 ^$ K: [9 g# V0 M# k! F  ?$ x- b4 i2 [- j
public class ActionGroupDemo extends SwarmImpl {
9 p9 a! b9 s# n& [+ `/ z/ g        ScheduleImpl schedule;
" w8 c: s) q5 v2 F        ActionGroupImpl actionGroup;
3 Q7 k3 u' l3 q6 }        ListImpl list;
( r# d) F. M  k        char Id = 'a';
2 Y' r, s( q2 _5 l; \2 J+ I/ }6 U- C% E6 ~$ D& i
        ActionGroupDemo(Zone aZone) {/ s& h+ H. ^" E
                super(aZone);
/ \. c: Q0 s- H                list = new ListImpl(aZone);  m" G; f6 ^; o! K" P- D
                swarmSetp();& q3 p" Q5 a  Y  @) L- E" W
                actionGroup = new ActionGroupImpl(aZone);
4 \1 ~  \, s, F9 B                schedule = new ScheduleImpl(aZone);
" o, U3 G- o9 K/ X; l3 O  ]  H                try {
1 u, ^2 Y" Z) O$ }: b0 Q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 `' |1 t4 C. j" D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' O/ [1 t5 M. c. b, z) v$ x                        
# V3 F! K: e; I                        actionGroup.createActionForEach$message(list, agentSel);: D3 h/ ]; [) V6 L- K3 C) x6 h
                        actionGroup.createActionTo$message(this, swarmSel);
9 i; q4 U% e  i. T  N& u# @                        schedule.at$createAction(0, actionGroup);
. G1 u. q& j3 f1 z2 {. i& X0 g                        schedule.at$createAction(1, actionGroup);. {3 l( P# `9 j' u3 I
                        schedule.at$createAction(2, actionGroup);
2 O( }( p& _+ u: t( Q. P6 a; j: X0 r. G& d- n
                } catch (Exception e) {) j- z, w% H0 p* b- Z1 `: i
                        e.printStackTrace(System.err);
! {4 j0 R6 ?6 r9 u                        //System.out.println(e);% L" {' e( _) i5 P' j% S
                        System.exit(1);* ~: Y/ K+ |) B( m
                }& e3 [! w$ z4 E! K; W- Z, L

- y* x* n9 p4 h; \: a% T6 y  r) k% `
. k3 z, t# n( R        }% k6 X/ k* q. m' d; }) c* X
8 |, {' V- L  K1 W9 z; @
        private void swarmSetp() {
6 l1 |# v6 J; s- n' b                list.addLast(new Agent(Id));4 ]* D5 Y! W6 e- J% v9 M
                Id++;
9 E5 I8 P! B/ F  J        }& t: v" u# X. z4 y/ g  V

1 a+ p/ E" g( [6 x; q$ |6 N4 @2 |+ m        public Activity activateIn(Swarm context) {
  ~$ h+ |$ g  w' |  |5 I2 g                super.activateIn(context);; t1 D6 g; B* j
                schedule.activateIn(this);( l; P, q0 l" j) O) O
                return getActivity();
& o: c( G  Z4 S& ^2 |" f        }
+ i% u# |. R9 i# G! Z
# Z0 O* c) `- w, g( i( H        public static void main(String[] args) {% Q- e+ U( f+ Q1 }9 b4 l( [
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ J* e- o7 v1 v5 }                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 X0 ~$ O+ I; w( t- t& U: p                swarms.buildObjects();1 ?9 Q; g9 t! P7 W1 y
                swarms.buildActions();) I' V0 B+ S/ c4 ?
                swarms.activateIn(null).run();7 G) G6 y7 p0 j4 ?1 E
        }5 z+ g* a! b6 k# ?- u
) l( j. p- s+ @( ?
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-14 03:39 , Processed in 0.021392 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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