设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5590|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 W% f$ L$ c5 u
8 J2 M9 {: J: T$ @& o) B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 j6 R$ \( j! {4 Q' A/ D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 [& u. f2 i" N
swarm.SignatureNotFoundException
5 T4 D2 d0 |, D1 q9 J: O1 {        at swarm.Selector.<init>(Selector.java:76). T  Q; s) P: B- Z  @/ G$ g& F# H
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* M+ u4 S2 D/ V7 F) b$ h        at ActionGroupDemo.main(ActionGroupDemo.java:67). l# E! n7 u8 ^$ O

: {! P" i% i* j2 R+ A0 V' [
( \. d% K+ e; O7 q' zimport swarm.objectbase.SwarmImpl;
' F/ y% `$ a! I  O* F# `4 Jimport swarm.objectbase.Swarm;
6 n6 i1 o5 ?# `! A! f- i/ ^import swarm.activity.ScheduleImpl;
1 S1 ], c3 ~7 w, A" l9 c7 l& [import swarm.activity.Activity;
; B7 S, d  O: C1 Y" V; D& h4 vimport swarm.activity.ActionGroupImpl;  j5 Q7 u4 q5 v) u4 G# J
import swarm.collections.ListImpl;# }2 H" Q* |: I9 V4 O/ v
import swarm.defobj.Zone; $ t6 M: o! k. U6 E7 F
import swarm.Globals;
" G8 R- t% k. h6 |1 ~* rimport swarm.Selector;# A5 W$ V) x7 @+ G3 ~* l: Z% c
import swarm.activity.ActionGroup;
( ?1 ?* y7 ~( |. ~' Bclass Agent {
/ }: r6 V$ Z- e) A5 s6 X2 g        char id;0 c0 |# s: V6 Y5 y$ }5 j9 s
% A, n0 T$ l9 H8 v2 }4 [# J0 n
        Agent(char id) {
4 E/ p+ }1 g, l                this.id = id;
9 |) Q& h( y1 W- P        }& w% V* ]% e6 O4 |' s
7 I" k! S, N( y7 S7 M: f. |
        public void agentStep() {
  X8 w$ P; f+ R                System.out.println(id + ":" + Globals.env.getCurrentTime());5 s( O- w$ b; B& Y
        }3 a2 e5 Q: X3 a+ j
}9 I2 d9 \7 g1 @
! x8 H/ ^% M( u; S& `
public class ActionGroupDemo extends SwarmImpl {
& I! U+ \2 f3 u& p# a1 N: d        ScheduleImpl schedule;
  s+ m" y1 k9 Q1 d( d1 G7 g8 o& Y$ \        ActionGroupImpl actionGroup;
  }0 s6 w2 P1 ^8 h; Z, }        ListImpl list;
" r: a% n4 c% j( r        char Id = 'a';
0 t4 p# u: U; V9 S# N2 J! Y" a, ~
: J( H1 A# h2 k        ActionGroupDemo(Zone aZone) {3 k) U; ]; e% h+ a8 r. |
                super(aZone);
2 M+ Y& H2 C8 P9 t                list = new ListImpl(aZone);
" |: i8 E" x3 p( D( _5 l5 d                swarmSetp();
! r! U( F8 S3 D3 r. Q; p                actionGroup = new ActionGroupImpl(aZone);
' P6 h( ?% q; s1 C                schedule = new ScheduleImpl(aZone);% G" I: `" F/ v$ P6 U# z/ X' U
                try {
/ w5 a+ Y: V0 F9 o/ ]                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ v+ F& `2 G# j# Q/ Q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  {; Q: E/ o9 z  T3 S# g3 d5 y
                        
: q( }8 p0 K& E0 _0 x4 T1 j/ U" {                        actionGroup.createActionForEach$message(list, agentSel);
  ^9 Z* w# i. K& n! z. I* v- d                        actionGroup.createActionTo$message(this, swarmSel);
3 T$ \& C/ A% e, z4 [                        schedule.at$createAction(0, actionGroup);& Q5 w  `0 h7 G1 \  Q3 j' H2 @
                        schedule.at$createAction(1, actionGroup);2 W5 K/ C% q; t0 f( i" r
                        schedule.at$createAction(2, actionGroup);
/ u& A6 {- {& q# m8 e* e" l! {% K  t, }
                } catch (Exception e) {
( M" y; u% U+ Q                        e.printStackTrace(System.err);
- r# I$ E* n9 h2 Z# ~0 \% H                        //System.out.println(e);; a- ]3 c" n% E$ a
                        System.exit(1);/ d; t3 \  V. h! Q0 L- `
                }
8 \7 M# n9 m' }9 n; Y# m" s* g1 b2 s4 V7 Q& W
# T- G0 g1 t( Z* M* n* J  O
        }% u8 E* _) N" w4 r/ J! J4 L
( J  ?& n: q+ M) i0 t- R2 Q; q
        private void swarmSetp() {: O3 `% |. v2 P/ A8 m" w% V# I
                list.addLast(new Agent(Id));& `; @( ~9 G! [2 P! ~
                Id++;  U1 L7 t) n& P( h5 m$ a4 m
        }
+ I/ K: R" u( a/ _3 J& {- V1 e. @! n, Z6 @
        public Activity activateIn(Swarm context) {! d! h# k. B5 P4 G: J
                super.activateIn(context);
3 w1 v! V; F* J% |! k( c                schedule.activateIn(this);
  ^* n" z2 |2 Y                return getActivity();
/ e" ^8 c7 n/ ?3 U5 s2 T        }2 _: g) x# M7 v8 }
6 o- y" s- N5 S
        public static void main(String[] args) {
1 i' e- S( H- h                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" r9 G4 l# ?2 |* ?9 B# c/ p" x                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ H' i; A) B% r$ Z  v
                swarms.buildObjects();
& x+ K* E, e' J: |                swarms.buildActions();
# m1 q- i2 J' n. o, q                swarms.activateIn(null).run();
# F9 u, ~1 b+ O* w        }' |1 E- k* N" m, n% X

% R+ G6 u3 N$ \- m# `# ^8 t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-14 11:27 , Processed in 0.015006 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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