设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13813|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * s. Y/ A! S; @; I' M* s- N4 ~: j
% ~/ M  B* z5 v  `. @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 s% E' q  ]- V  w- f! t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! Y+ i9 e  t5 h) x: o# H; R* j
swarm.SignatureNotFoundException, a$ u# v! K/ L, e- |
        at swarm.Selector.<init>(Selector.java:76)
8 U7 i' `& i& [2 n/ n, ^; T        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) N: P+ Z# N9 e+ o' A! d  z, L        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 t( k* M7 V" H: F7 u3 `4 x% I$ {, J
3 u: q6 ^1 n9 I8 d( C6 \2 i2 T) S. N' H& d* i
import swarm.objectbase.SwarmImpl;
3 ?' _3 _- X& m5 O1 ?import swarm.objectbase.Swarm;
9 \! H7 R: D  @5 Uimport swarm.activity.ScheduleImpl;& f7 C& o, U7 R$ y0 T5 y0 r
import swarm.activity.Activity;
" l3 p% H! o0 W- f# w: `& o  mimport swarm.activity.ActionGroupImpl;
+ d4 h! N/ I1 h# c/ B% |4 bimport swarm.collections.ListImpl;( o/ _& T1 f* R, n$ {# E- Y
import swarm.defobj.Zone; 7 q4 n$ f8 z2 `8 j3 B( h
import swarm.Globals;
) N% \- ?5 `, q& K# _, Mimport swarm.Selector;3 D% `+ O' B* f
import swarm.activity.ActionGroup; , v4 j4 ]9 b* p: O# ?
class Agent {
( t9 J- j1 P) ?7 C+ K& G1 O        char id;
0 [$ t* K6 M  X- r- \* H2 X# ~7 a: e0 T# ], k
        Agent(char id) {
/ Z' d' y$ V% v) w/ O, h( P                this.id = id;
! i3 g/ d# ~! m( T# U4 Q# V% q        }* {) N9 _5 z9 \' l- E

+ e1 W$ N% l/ B) n, I9 h5 ]        public void agentStep() {
9 B& {) z! V* q( J' S  q1 ~$ E/ o                System.out.println(id + ":" + Globals.env.getCurrentTime());
- G/ ?" P' r! {- f- ]9 @; X; x        }
8 ^% `0 {- [4 X* f+ H! Z2 ~}
3 w, l- l7 u2 [& n; L$ E9 ~1 @; b( B( H; D+ g  v9 f# x
public class ActionGroupDemo extends SwarmImpl {
0 L. Y/ `% B8 g4 H8 G% ~4 t        ScheduleImpl schedule;( \( E$ _1 h; V( f  _
        ActionGroupImpl actionGroup;
+ O& [9 h2 ^5 x        ListImpl list;0 Z1 o0 c: ]6 w; O
        char Id = 'a';
, c# `3 M5 w8 c* B6 i! A& e* y8 o& p0 G; {# e% t0 z. j8 l
        ActionGroupDemo(Zone aZone) {7 }% C* t; r4 s  R" k# U, I% S) i
                super(aZone);% T/ q/ U# s" K( W
                list = new ListImpl(aZone);
/ F7 s4 s- I# Z4 _& x8 n2 `                swarmSetp();* a& U% \3 h4 F
                actionGroup = new ActionGroupImpl(aZone);
9 g3 k! R2 R7 H" y2 Y                schedule = new ScheduleImpl(aZone);( t% C$ w7 E2 r# x8 E/ M9 h
                try {
- e* k8 D' L. E0 z8 s                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 ^; Q. h4 H8 [) z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' y- a" b: Q/ L; J) r                        , }3 J' _* B2 P  M/ `
                        actionGroup.createActionForEach$message(list, agentSel);
8 S8 I! f  @, s5 F2 B! I' o  l: n                        actionGroup.createActionTo$message(this, swarmSel);+ \' y2 Y) |: X
                        schedule.at$createAction(0, actionGroup);
# [: F, N% o5 _2 ~  s                        schedule.at$createAction(1, actionGroup);
  }# Z2 g$ O+ T5 L9 D, }                        schedule.at$createAction(2, actionGroup);
0 j  Y8 w6 d# @  t4 Z# A4 ~$ J! a  r+ E5 |9 ?6 A) ]3 p  b/ ]: U
                } catch (Exception e) {
/ Y& _" `9 b7 d. e( k                        e.printStackTrace(System.err);
! ~+ {7 }& ~; |+ p9 s                        //System.out.println(e);0 R! h% d* v+ q3 W7 [  J! ]8 i
                        System.exit(1);0 ]5 ], `# i) d# O+ X, J  J: W
                }! e- D! a7 z5 ^6 o. n" R

. W8 F6 p1 I/ O9 b! Z( U" o3 y5 v4 N% h& V
        }, X; M: G5 C2 ?8 m; j

# M! F" i5 _6 A6 |. O* \        private void swarmSetp() {
% i* ?% Y  k3 N  ?                list.addLast(new Agent(Id));
- O) t) u9 j& u1 t                Id++;. N! V7 A: r/ c; A) t7 f$ f. m5 ^
        }: `4 i; i; d- i7 H: \2 n, B3 N
( N% _) s% n8 Y' c
        public Activity activateIn(Swarm context) {
" T' j6 T' l$ A5 q2 V+ P                super.activateIn(context);
. V6 i7 h0 V% p6 W0 M                schedule.activateIn(this);% z9 q% o' o: e8 y
                return getActivity();% ~7 ?( B) z. ~0 v
        }! W$ J' E8 S1 n% R3 W3 _

7 f) ?, U- |( F/ v        public static void main(String[] args) {8 r- H/ j7 h6 a: K$ _& q$ R
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 r% r+ n1 {7 d6 r8 H  [. g2 i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( M8 c+ g( f- k$ g/ G
                swarms.buildObjects();* w! y/ Y+ U  c# \& D) X& n: \
                swarms.buildActions();
+ N* k4 m, J& F6 v) x' h                swarms.activateIn(null).run();* A  F9 h( C7 Y# Q
        }# y! [2 b; Z, `

* b* V4 E# D( B. G. o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-18 12:15 , Processed in 0.016180 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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