设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10520|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # R: Y4 j  p$ h
& F, w5 ]" `$ o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& E+ h0 C& R6 Y1 l" Y9 e6 q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: s, ]$ V/ E% Pswarm.SignatureNotFoundException8 n% A9 }5 b) q6 E& M* a! T+ r
        at swarm.Selector.<init>(Selector.java:76)0 I$ w9 }, w$ |1 @; K1 j. p
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% O5 x! c  e. C# G2 ]. z        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 U6 y( Q- n* J7 ^- K

& d  ]( f" L8 u2 f9 h. l4 i
. p4 u( q* t" a1 N- n/ ~$ g( qimport swarm.objectbase.SwarmImpl;
! S. Q, I8 L3 Limport swarm.objectbase.Swarm;
1 l% ^- h% Z2 M. D$ L4 F; {9 R# bimport swarm.activity.ScheduleImpl;
' P$ {' R  }& R2 a: Qimport swarm.activity.Activity;
7 x3 ]- c: Y; P4 S, x+ M+ M( gimport swarm.activity.ActionGroupImpl;9 W7 ~+ A! i9 M! I
import swarm.collections.ListImpl;/ f$ ?, K2 t% ~
import swarm.defobj.Zone; ' g9 ^; x" \$ r
import swarm.Globals;. y# o, V. e; U! H
import swarm.Selector;
0 m# i0 O7 {7 ~5 ?* H$ _7 r# Iimport swarm.activity.ActionGroup; ; S% v$ k3 O; j$ N/ Z
class Agent {
+ p) }+ t7 Q! Z6 `6 D        char id;
- W- `* i  y$ n: I  G/ H* t3 V7 r$ u% B: L
        Agent(char id) {( I; h! r6 D; ^, ?' d
                this.id = id;
* r/ K1 L* w% j' m. E% p        }3 y* o+ T& o2 d6 N5 d& E

" ]# q0 J$ O2 j3 \/ d        public void agentStep() {
& a+ ^6 u3 Z9 X+ `4 P2 U- ~' I                System.out.println(id + ":" + Globals.env.getCurrentTime());: X2 n9 W3 z9 W( @' R$ X: s
        }
0 U0 X6 L8 Y6 T$ e9 d* F" |) Z- r5 i6 m}
% s, l  y: M9 B/ I( Y: V, P6 s4 z. y, M/ a& g
public class ActionGroupDemo extends SwarmImpl {0 V5 c$ s3 [# m9 z4 x
        ScheduleImpl schedule;
5 w7 y) T6 i: n& b        ActionGroupImpl actionGroup;
/ m; g+ I6 c% Z# h1 d1 ]3 i        ListImpl list;
& F) l2 I6 g7 d, |) Z! N' ?$ R        char Id = 'a';" O; x, Z/ W4 q1 z7 T7 L  d: `

' a  f8 P. W. M7 e9 M. n1 F        ActionGroupDemo(Zone aZone) {
: _, L7 s1 ?0 o  F2 b# i/ F                super(aZone);
& n* I  x7 t8 ^# A8 j/ W                list = new ListImpl(aZone);, o5 ^' s* h3 S& w- Y$ f9 x
                swarmSetp();- l) Z3 B+ t! ]2 s7 T
                actionGroup = new ActionGroupImpl(aZone);6 U1 E$ Q1 y2 l
                schedule = new ScheduleImpl(aZone);
0 U- S. T% u3 q1 G3 M0 _; b                try {, b$ q2 n, ], D# b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* X2 R: D" [: V0 @9 Y3 r( {7 V
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 x6 o2 g' V; l# x
                        
6 B/ }$ q6 z8 X* o; K                        actionGroup.createActionForEach$message(list, agentSel);$ }% V# {( t* P6 j3 }0 Q
                        actionGroup.createActionTo$message(this, swarmSel);
6 y" H  H/ I: N  L8 {9 h                        schedule.at$createAction(0, actionGroup);7 Y: r- ^7 b  S% l
                        schedule.at$createAction(1, actionGroup);) {9 A( H% k# I; W
                        schedule.at$createAction(2, actionGroup);/ `9 w7 F% V# ~" _( A5 B- A

6 p. C( a+ ^/ L, B                } catch (Exception e) {1 J5 A, G6 J+ X2 t& ~; u# |
                        e.printStackTrace(System.err);4 w8 B; G) A  [1 k+ h* ^
                        //System.out.println(e);% p; l+ |' y5 B$ O( R6 C
                        System.exit(1);
$ m! t+ ~% u# R4 q% H                }; \  G, x2 ^0 K3 v+ p  `
& m2 T- h( X5 b, J0 |- a" y! W1 _" J
- K4 `' H! I" b9 G
        }2 v7 j" Q; A. o5 M" C. X- D$ E
; m' n9 u9 U3 C5 i9 R
        private void swarmSetp() {, Y+ k' S2 v  o/ F/ m. |: W
                list.addLast(new Agent(Id));
  C2 R7 ^* T# e3 i2 M. c  H                Id++;1 |( I) A7 A" O9 E9 X
        }- j8 p  L4 A  P1 \/ F' @, N

0 |7 H" v9 {, q* o/ H- q        public Activity activateIn(Swarm context) {
' e  v2 e2 u1 s/ Y  m8 C+ F                super.activateIn(context);# V" J0 _4 ?( [2 x) f. i+ F9 P
                schedule.activateIn(this);
3 x+ d" |% l/ l& r                return getActivity();
- K+ K" }3 A$ H- q, Y. Q& G5 `8 Y        }& L6 {+ ?( H$ B9 G. o! x2 ^- h
% q  m3 p# j& ]6 G6 M
        public static void main(String[] args) {
' D$ w$ z/ k2 M$ K                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 K+ N% q6 Y. ?: u, t( q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 k& w6 K% Q# O% G' L0 `: V
                swarms.buildObjects();
- k9 ~# [+ ?  p" s2 q- ^                swarms.buildActions();9 v. b7 T+ i5 ~& [1 s# b7 s0 G
                swarms.activateIn(null).run();
2 J$ D" ]8 z  b        }
) C5 b  F6 h) p; ]1 J3 r" |1 q+ S$ d! }$ J% z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-16 10:26 , Processed in 0.012829 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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